Skip to content

Commit 0d10a55

Browse files
committed
Improve Nginx reload after update SSL
1 parent 0f8f084 commit 0d10a55

11 files changed

+61
-43
lines changed

bin/v-add-letsencrypt-domain

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -505,12 +505,12 @@ if [ -z "$mail" ]; then
505505
ssl_enabled="$(get_object_value 'web' 'DOMAIN' "$domain" '$SSL')"
506506
ssl_force="$(get_object_value 'web' 'DOMAIN' "$domain" '$SSL_FORCE')"
507507
[[ "$ssl_enabled" = "yes" ]] && $BIN/v-delete-web-domain-ssl $user $domain > /dev/null 2>&1
508-
$BIN/v-add-web-domain-ssl $user $domain $ssl_dir $ssl_home
508+
$BIN/v-add-web-domain-ssl $user $domain $ssl_dir $ssl_home updatessl
509509
[[ "$ssl_force" = "yes" ]] && $BIN/v-add-web-domain-ssl-force $user $domain > /dev/null 2>&1
510510
else
511511
ssl_enabled="$(get_object_value 'mail' 'DOMAIN' "$root_domain" '$SSL')"
512512
[[ "$ssl_enabled" = "yes" ]] && $BIN/v-delete-mail-domain-ssl $user $root_domain > /dev/null 2>&1
513-
$BIN/v-add-mail-domain-ssl $user $root_domain $ssl_dir
513+
$BIN/v-add-mail-domain-ssl $user $root_domain $ssl_dir updatessl
514514
fi
515515

516516
if [ "$?" -ne '0' ]; then

bin/v-add-mail-domain-ssl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
user=$1
1717
domain=$2
1818
ssl_dir=$3
19-
restart="$3"
19+
restart="$4"
2020

2121
# Additional argument formatting
2222
if [[ "$domain" =~ [[:upper:]] ]]; then

bin/v-restart-cron

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ send_email_report() {
3636
#----------------------------------------------------------#
3737

3838
# Exit
39+
if [ -z "$CRON_SYSTEM" ] || [ "$CRON_SYSTEM" = 'remote' ]; then
40+
exit
41+
fi
42+
3943
if [ "$1" = "no" ]; then
4044
exit
4145
fi
@@ -47,10 +51,6 @@ if [ "$1" = 'scheduled' ] || [ -z "$1" -a "$SCHEDULED_RESTART" = 'yes' ]; then
4751
exit
4852
fi
4953

50-
if [ -z "$CRON_SYSTEM" ] || [ "$CRON_SYSTEM" = 'remote' ]; then
51-
exit
52-
fi
53-
5454
# Restart system
5555
$BIN/v-restart-service $CRON_SYSTEM >/dev/null 2>&1
5656
if [ $? -ne 0 ]; then

bin/v-restart-dns

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,10 @@ send_email_report() {
4141
#----------------------------------------------------------#
4242

4343
# Exit
44+
if [ -z "$DNS_SYSTEM" ] || [ "$DNS_SYSTEM" = 'remote' ] ; then
45+
exit
46+
fi
47+
4448
if [ "$1" = "no" ]; then
4549
exit
4650
fi
@@ -52,10 +56,6 @@ if [ "$1" = 'scheduled' ] || [ -z "$1" -a "$SCHEDULED_RESTART" = 'yes' ]; then
5256
exit
5357
fi
5458

55-
if [ -z "$DNS_SYSTEM" ] || [ "$DNS_SYSTEM" = 'remote' ] ; then
56-
exit
57-
fi
58-
5959
# Restart system
6060
$BIN/v-restart-service $DNS_SYSTEM > /dev/null 2>&1
6161
if [ $? -ne 0 ]; then

bin/v-restart-ftp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ send_email_report() {
3636
#----------------------------------------------------------#
3737

3838
# Exit
39+
if [ -z "$FTP_SYSTEM" ] || [ "$FTP_SYSTEM" = 'remote' ]; then
40+
exit
41+
fi
42+
3943
if [ "$1" = "no" ]; then
4044
exit
4145
fi
@@ -47,10 +51,6 @@ if [ "$1" = 'scheduled' ] || [ -z "$1" -a "$SCHEDULED_RESTART" = 'yes' ]; then
4751
exit
4852
fi
4953

50-
if [ -z "$FTP_SYSTEM" ] || [ "$FTP_SYSTEM" = 'remote' ]; then
51-
exit
52-
fi
53-
5454
# Restart system
5555
$BIN/v-restart-service $FTP_SYSTEM > /dev/null 2>&1
5656
if [ $? -ne 0 ]; then

bin/v-restart-mail

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@ send_email_report() {
3535
#----------------------------------------------------------#
3636

3737
# Exit
38+
if [ -z "$MAIL_SYSTEM" ] || [ "$MAIL_SYSTEM" = 'remote' ]; then
39+
exit
40+
fi
41+
3842
if [ "$1" = "no" ]; then
3943
exit
4044
fi
@@ -46,10 +50,6 @@ if [ "$1" = 'scheduled' ] || [ -z "$1" -a "$SCHEDULED_RESTART" = 'yes' ]; then
4650
exit
4751
fi
4852

49-
if [ -z "$MAIL_SYSTEM" ] || [ "$MAIL_SYSTEM" = 'remote' ]; then
50-
exit
51-
fi
52-
5353
tmpfile=$(mktemp)
5454
# Restart IMAP system if present
5555
if [ ! -z "$IMAP_SYSTEM" ]; then

bin/v-restart-proxy

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ send_email_report() {
3636
#----------------------------------------------------------#
3737

3838
# Exit
39+
if [ -z "$PROXY_SYSTEM" ] || [ "$PROXY_SYSTEM" = 'remote' ]; then
40+
exit
41+
fi
42+
3943
if [ "$1" = "no" ]; then
4044
exit
4145
fi
@@ -47,7 +51,9 @@ if [ "$1" = 'scheduled' ] || [ -z "$1" -a "$SCHEDULED_RESTART" = 'yes' ]; then
4751
exit
4852
fi
4953

50-
if [ -z "$PROXY_SYSTEM" ] || [ "$PROXY_SYSTEM" = 'remote' ]; then
54+
if [ "$1" = "updatessl" ]; then
55+
sed -i "/\/$SCRIPT ssl/d" $HESTIA/data/queue/restart.pipe
56+
echo "$BIN/$SCRIPT ssl" >> $HESTIA/data/queue/restart.pipe
5157
exit
5258
fi
5359

@@ -72,18 +78,22 @@ if [ -f "$HESTIA/web/inc/nginx_proxy" ]; then
7278
# Default behaviour
7379

7480
# Preform an check if Nginx is valid as reload doesn't throw an error / exit
75-
service $PROXY_SYSTEM configtest >> /dev/null 2>&1
81+
service $PROXY_SYSTEM configtest > /dev/null 2>&1
7682
if [ $? -ne 0 ]; then
7783
send_email_report
7884
check_result $E_RESTART "$PROXY_SYSTEM restart failed"
7985
fi
80-
86+
8187
# Restart system
82-
$BIN/v-restart-service $PROXY_SYSTEM > /dev/null 2>&1
88+
if [ "$1" = "ssl" ]; then
89+
restart="ssl"
90+
fi
91+
$BIN/v-restart-service $PROXY_SYSTEM $restart > /dev/null 2>&1
8392

8493
# Update restart queue
8594
if [ -e "$HESTIA/data/queue/restart.pipe" ]; then
8695
sed -i "/\/$SCRIPT now/d" $HESTIA/data/queue/restart.pipe
96+
sed -i "/\/$SCRIPT ssl/d" $HESTIA/data/queue/restart.pipe
8797
fi
8898
fi
8999

bin/v-restart-service

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ for service in $service_list; do
5252
# Run the restart rules for iptables firewall
5353
$BIN/v-stop-firewall
5454
$BIN/v-update-firewall
55+
elif [ "$restart" = "ssl" ] && [ "$service" = "nginx" ]; then
56+
service $service upgrade > /dev/null 2>&1
5557
elif [ -z "$restart" -o "$restart" = "no" ] && [ \
5658
"$service" = "nginx" -o \
5759
"$service" = "apache2" -o \

bin/v-restart-web

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ send_email_report() {
4040
#----------------------------------------------------------#
4141

4242
# Exit
43+
if [ -z "$WEB_SYSTEM" ] || [ "$WEB_SYSTEM" = 'remote' ]; then
44+
exit
45+
fi
46+
4347
if [ "$1" = "no" ]; then
4448
exit
4549
fi
@@ -51,33 +55,40 @@ if [ "$1" = 'scheduled' ] || [ -z "$1" -a "$SCHEDULED_RESTART" = 'yes' ]; then
5155
exit
5256
fi
5357

54-
if [ -z "$WEB_SYSTEM" ] || [ "$WEB_SYSTEM" = 'remote' ]; then
58+
if [ "$1" = "updatessl" ]; then
59+
sed -i "/\/$SCRIPT ssl/d" $HESTIA/data/queue/restart.pipe
60+
echo "$BIN/$SCRIPT ssl" >> $HESTIA/data/queue/restart.pipe
5561
exit
5662
fi
57-
if [ $WEB_SYSTEM = 'nginx' ]; then
58-
service $WEB_SYSTEM configtest >> /dev/null 2>&1
63+
64+
if [ $WEB_SYSTEM = 'nginx' ]; then
65+
if [ "$1" = "ssl" ]; then
66+
restart="ssl"
67+
fi
68+
service $WEB_SYSTEM configtest > /dev/null 2>&1
5969
if [ $? -ne 0 ]; then
6070
send_email_report
6171
check_result $E_RESTART "$WEB_SYSTEM restart failed"
6272
fi
63-
elif [ $WEB_SYSTEM = 'apache2' ]; then
64-
apache2ctl configtest >> /dev/null 2>&1
73+
elif [ $WEB_SYSTEM = 'apache2' ]; then
74+
apache2ctl configtest > /dev/null 2>&1
6575
if [ $? -ne 0 ]; then
6676
send_email_report
6777
check_result $E_RESTART "$WEB_SYSTEM restart failed"
6878
fi
6979
fi
7080

71-
$BIN/v-restart-service $WEB_SYSTEM > /dev/null 2>&1
81+
$BIN/v-restart-service $WEB_SYSTEM $restart > /dev/null 2>&1
7282

7383
if [ $? -ne 0 ]; then
7484
send_email_report
7585
check_result $E_RESTART "$WEB_SYSTEM restart failed"
76-
fi
86+
fi
7787

7888
# Update restart queue
7989
if [ -e "$HESTIA/data/queue/restart.pipe" ]; then
8090
sed -i "/\/$SCRIPT now/d" $HESTIA/data/queue/restart.pipe
91+
sed -i "/\/$SCRIPT ssl/d" $HESTIA/data/queue/restart.pipe
8192
fi
8293

8394
#----------------------------------------------------------#

bin/v-restart-web-backend

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ send_email_report() {
3333
#----------------------------------------------------------#
3434

3535
# Exit
36+
if [ -z "$WEB_BACKEND" ] || [ "$WEB_BACKEND" = 'remote' ]; then
37+
exit
38+
fi
39+
3640
if [ "$1" = "no" ]; then
3741
exit
3842
fi
@@ -44,10 +48,6 @@ if [ "$1" = 'scheduled' ] || [ -z "$1" -a "$SCHEDULED_RESTART" = 'yes' ]; then
4448
exit
4549
fi
4650

47-
if [ -z "$WEB_BACKEND" ] || [ "$WEB_BACKEND" = 'remote' ]; then
48-
exit
49-
fi
50-
5151
tmpfile=$(mktemp)
5252
for php_folder in /etc/php/*; do
5353
[ ! -d "${php_folder}/fpm/pool.d/" ] && continue

0 commit comments

Comments
 (0)