Skip to content

Commit d924bcd

Browse files
authored
Update s-ui-pro.sh
- Fix Bug
1 parent 85a0099 commit d924bcd

File tree

1 file changed

+24
-22
lines changed

1 file changed

+24
-22
lines changed

s-ui-pro.sh

+24-22
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/bin/bash
2-
############### s-ui-pro v1.0 @ github.com/GFW4Fun ##############
2+
############### s-ui-pro v1.2 @ github.com/GFW4Fun ##############
33
[[ $EUID -ne 0 ]] && echo "not root!" && exit 1
44
Pak=$(type apt &>/dev/null && echo "apt" || echo "yum")
55
msg_ok() { echo -e "\e[1;42m $1 \e[0m";}
@@ -44,38 +44,40 @@ if [[ ${UNINSTALL} == *"y"* ]]; then
4444
fi
4545
##############################Domain Validations######################
4646
while true; do
47-
domain=$(echo "$domain" 2>&1 | tr -d '[:space:]' )
48-
SubDomain=$(echo "$domain" 2>&1 | sed 's/^[^ ]* \|\..*//g')
49-
MainDomain=$(echo "$domain" 2>&1 | sed 's/.*\.\([^.]*\..*\)$/\1/')
50-
if [[ "${SubDomain}.${MainDomain}" != "${domain}" ]] ; then
51-
MainDomain=${domain}
52-
fi
53-
if [[ -n "$domain" ]] ; then
54-
if [[ -n $(host "$domain" 2>/dev/null | grep -v NXDOMAIN) ]]; then
55-
break
56-
fi
57-
fi
5847
echo -en "Enter available subdomain (sub.domain.tld): " && read domain
48+
if [[ ! -z "$domain" ]]; then
49+
break
50+
fi
5951
done
52+
53+
domain=$(echo "$domain" 2>&1 | tr -d '[:space:]' )
54+
SubDomain=$(echo "$domain" 2>&1 | sed 's/^[^ ]* \|\..*//g')
55+
MainDomain=$(echo "$domain" 2>&1 | sed 's/.*\.\([^.]*\..*\)$/\1/')
56+
57+
if [[ "${SubDomain}.${MainDomain}" != "${domain}" ]] ; then
58+
MainDomain=${domain}
59+
fi
6060
###############################Install Packages#############################
6161
if [[ ${INSTALL} == *"y"* ]]; then
6262
$Pak -y update
63-
$Pak -y install nginx-full certbot python3-certbot-nginx sqlite3
63+
$Pak -y install nginx certbot python3-certbot-nginx sqlite3
6464
systemctl daemon-reload && systemctl enable --now nginx
6565
fi
66-
#########################Install nginx Config###############################
6766
systemctl stop nginx
6867
fuser -k 80/tcp 80/udp 443/tcp 443/udp 2>/dev/null
69-
if [[ ! -f "/etc/letsencrypt/live/${MainDomain}/privkey.pem" ]]; then
70-
certbot certonly --standalone --non-interactive --force-renewal --agree-tos --register-unsafely-without-email --cert-name "$MainDomain" -d "$domain"
71-
else
72-
msg_ok "$MainDomain SSL Certificate is exist!"
73-
fi
74-
sleep 3
75-
if [[ ! -f "/etc/letsencrypt/live/${MainDomain}/privkey.pem" ]]; then
68+
##############################Install SSL####################################
69+
for D in `find /etc/letsencrypt/live -mindepth 1 -type d -exec basename {} \;`; do
70+
if [[ $D == "${MainDomain}" ]]; then
71+
certbot delete --non-interactive --cert-name ${MainDomain}
72+
fi
73+
done
74+
75+
certbot certonly --standalone --non-interactive --force-renewal --agree-tos --register-unsafely-without-email --cert-name "$MainDomain" -d "$domain"
76+
77+
if [[ ! -d "/etc/letsencrypt/live/${MainDomain}/" ]]; then
7678
msg_err "$MainDomain SSL certificate could not be generated, Maybe the domain or IP domain is invalid!" && exit 1
7779
fi
78-
80+
###########################################################################
7981
cat > "/etc/nginx/sites-available/$MainDomain" << EOF
8082
server {
8183
server_name ~^((?<subdomain>.*)\.)?(?<domain>[^.]+)\.(?<tld>[^.]+)\$;

0 commit comments

Comments
 (0)