Skip to content

Commit d183e00

Browse files
authored
Merge pull request hestiacp#546 from Lupul/dev-0714
Multiphp improvements
2 parents d6f94c9 + aa488bf commit d183e00

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+576
-275
lines changed

bin/v-add-fs-archive

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ if [ -z "$src0" ]; then
1515
fi
1616

1717
# Checking hestia user
18-
if [ ! -e "$HESTIA/data/users/$user" ]; then
18+
if [ ! -d "$HESTIA/data/users/$user" ]; then
1919
echo "Error: hestia user $user doesn't exist"
2020
exit 3
2121
fi

bin/v-add-fs-directory

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ if [ -z "$dst_dir" ]; then
1414
fi
1515

1616
# Checking hestia user
17-
if [ ! -e "$HESTIA/data/users/$user" ]; then
17+
if [ ! -d "$HESTIA/data/users/$user" ]; then
1818
echo "Error: hestia user $user doesn't exist"
1919
exit 3
2020
fi

bin/v-add-fs-file

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ if [ -z "$dst_file" ]; then
1414
fi
1515

1616
# Checking hestia user
17-
if [ ! -e "$HESTIA/data/users/$user" ]; then
17+
if [ ! -d "$HESTIA/data/users/$user" ]; then
1818
echo "Error: hestia user $user doesn't exist"
1919
exit 3
2020
fi

bin/v-add-sys-ip

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ if [ -z "$sys_ip_check" ]; then
8181
fi
8282
IFS='%'
8383
echo -e $sys_ip >> /etc/netplan/60-hestia.yaml
84+
unset IFS
8485
else
8586
sys_ip="\n# Added by hestia"
8687
sys_ip="$sys_ip\nauto $iface"
@@ -178,8 +179,8 @@ fi
178179
increase_user_value "$user" '$IP_OWNED'
179180
if [ "$user" = 'admin' ]; then
180181
if [ "$ip_status" = 'shared' ]; then
181-
for user in $(ls $HESTIA/data/users); do
182-
increase_user_value "$user" '$IP_AVAIL'
182+
for hestia_user in $($HESTIA/bin/v-list-sys-users plain); do
183+
increase_user_value "$hestia_user" '$IP_AVAIL'
183184
done
184185
else
185186
increase_user_value 'admin' '$IP_AVAIL'

bin/v-add-sys-quota

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ else
7575
fi
7676

7777
# Rebuilding user quota
78-
for user in $(ls $HESTIA/data/users); do
78+
for user in $($HESTIA/bin/v-list-sys-users plain); do
7979
$BIN/v-update-user-quota $user
8080
done
8181

bin/v-add-user

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,9 @@ if [ -z "$(grep ^hestia-users: /etc/group)" ]; then
6868
fi
6969

7070
# Add membership to hestia-users group to non-admin users
71-
if [ "$user" != "admin" ]; then
71+
if [ "$user" = "admin" ]; then
72+
setfacl -m "g:admin:r-x" "$HOMEDIR/$user"
73+
else
7274
usermod -a -G "hestia-users" "$user"
7375
setfacl -m "u:$user:r-x" "$HOMEDIR/$user"
7476
fi

bin/v-add-web-domain-backend

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@ cat $WEBTPL/$WEB_BACKEND/$template.tpl |\
6262
sed -e "s|%backend_port%|$backend_port|" \
6363
-e "s|%user%|$user|g"\
6464
-e "s|%domain%|$domain|g"\
65-
-e "s|%backend%|$backend_type|g" > $pool/$backend_type.conf
65+
-e "s|%backend%|$backend_type|g"\
66+
-e "s|%backend_version%|$backend_version|g" > $pool/$backend_type.conf
6667

6768

6869
#----------------------------------------------------------#

bin/v-add-web-php

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ if [[ ! $version =~ ^[0-9]\.[0-9]+ ]]; then
3333
fi
3434

3535
# Check if php version already exists
36-
if [ -f "$php_fpm" ] && [ -f "$HESTIA/data/templates/$WEB_SYSTEM/PHP-$version.sh" ]; then
36+
if [ -f "$php_fpm" ] && [ -f "$HESTIA/data/templates/web/php-fpm/PHP-${version/\./_}.tpl" ]; then
3737
echo "Version already installed..."
3838
exit
3939
fi
@@ -51,13 +51,21 @@ fi
5151
mph="php$version-mbstring php$version-bcmath php$version-cli php$version-curl
5252
php$version-fpm php$version-gd php$version-intl php$version-mysql
5353
php$version-soap php$version-xml php$version-zip php$version-mbstring
54-
php$version-json php$version-bz2 php$version-pspell"
54+
php$version-json php$version-bz2 php$version-pspell php$version-imagick php$version-pgsql"
5555

5656
# Check is version is 7.1 or below to add mcrypt
5757
if [[ `echo "$version 7.2" | awk '{print ($1 < $2)}'` == 1 ]]; then
5858
mph="$mph php$version-mcrypt"
5959
fi
6060

61+
if [ -z "$DB_SYSTEM" -o "$DB_SYSTEM" = "mysql" ]; then
62+
mph=$(echo "$mph" | sed -e "s/php$version-pgsql//")
63+
fi
64+
65+
if [ -z "$DB_SYSTEM" -o "$DB_SYSTEM" = "pgsql" ]; then
66+
mph=$(echo "$mph" | sed -e "s/php$version-mysql//")
67+
fi
68+
6169
# Install php packages
6270
apt-get -qq update
6371
apt-get -y install $mph > /dev/null 2>&1 &
@@ -83,42 +91,32 @@ fi
8391

8492
# Check if required modules for apache2 are enabled
8593
if [ "$WEB_SYSTEM" = "apache2" ]; then
86-
if ! ls -l /etc/apache2/mods-enabled/ | grep --quiet "proxy_fcgi"; then
87-
a2enmod proxy_fcgi > /dev/null 2>&1
88-
restart_apache2="yes"
89-
fi
90-
if ! ls -l /etc/apache2/mods-enabled/ | grep --quiet "setenvif"; then
91-
a2enmod setenvif > /dev/null 2>&1
92-
restart_apache2="yes"
94+
if ! a2query -q -m proxy_fcgi; then
95+
a2enmod -q proxy_fcgi
9396
fi
94-
if [ "$restart_apache2" = "yes" ]; then
95-
service apache2 restart > /dev/null 2>&1
97+
if ! a2query -q -m setenvif; then
98+
a2enmod -q setenvif
9699
fi
100+
$BIN/v-restart-web
97101
fi
98102

99103
# Configure fpm
100104
update-rc.d php$version-fpm defaults > /dev/null 2>&1
101-
v_tpl=$(echo "$version" | sed -e 's/[.]//')
105+
v_tpl=${version//.}
102106
rm -f /etc/php/$version/fpm/pool.d/*
103107
cp -f $HESTIA_INSTALL_DIR/php-fpm/dummy.conf /etc/php/$version/fpm/pool.d/
104108
sed -i "s/9999/99$v_tpl/g" /etc/php/$version/fpm/pool.d/dummy.conf
105109

106-
# Install php templates
107-
cp -f $HESTIA_INSTALL_DIR/multiphp/$WEB_SYSTEM/PHP-${version//.}.sh \
108-
$HESTIA/data/templates/web/$WEB_SYSTEM/
109-
cp -f $HESTIA_INSTALL_DIR/multiphp/$WEB_SYSTEM/PHP-${version//.}.tpl \
110-
$HESTIA/data/templates/web/$WEB_SYSTEM/
111-
cp -f $HESTIA_INSTALL_DIR/multiphp/$WEB_SYSTEM/PHP-${version//.}.stpl \
112-
$HESTIA/data/templates/web/$WEB_SYSTEM/
113-
chmod a+x $HESTIA/data/templates/web/$WEB_SYSTEM/PHP-${version//.}.sh
114-
110+
# Install backend template
111+
cp -f $HESTIA_INSTALL_DIR/php-fpm/multiphp.tpl \
112+
$HESTIA/data/templates/web/php-fpm/PHP-${version/\./_}.tpl
115113

116114
#----------------------------------------------------------#
117115
# Hestia #
118116
#----------------------------------------------------------#
119117

120118
# Logging
121-
log_history "installed php $job"
119+
log_history "installed php $version" '' 'admin'
122120
log_event "$OK" "$ARGUMENTS"
123121

124122
exit

bin/v-backup-users

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ mysqlrepair --all-databases --check --auto-repair > /dev/null 2>&1
2828
if [ -z "$BACKUP_SYSTEM" ]; then
2929
exit
3030
fi
31-
for user in $(grep '@' /etc/passwd |cut -f1 -d:); do
31+
for user in $($HESTIA/bin/v-list-sys-users plain); do
3232
check_suspend=$(grep "SUSPENDED='no'" $HESTIA/data/users/$user/user.conf)
3333
log=$HESTIA/log/backup.log
3434
if [ ! -f "$HESTIA/data/users/$user/user.conf" ]; then

bin/v-change-database-owner

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ is_object_unsuspended 'user' 'USER' "$user"
3232

3333
# Check owner existance
3434
owner=$(echo $database | cut -f 1 -d '_')
35-
if [ ! -e "$HESTIA/data/users/$owner" ]; then
35+
if [ ! -d "$HESTIA/data/users/$owner" ]; then
3636
echo "Error: database owner doesn't exist"
3737
log_event "$E_NOTEXIST" "$ARGUMENTS"
3838
exit $E_NOTEXIST

0 commit comments

Comments
 (0)