-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsupprimeSite.sh
executable file
·67 lines (51 loc) · 1.91 KB
/
supprimeSite.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#!/bin/bash
# Modify the following to match your system
APACHE_CONFIG='/etc/apache2/sites-available'
APACHE_INIT='/etc/init.d/apache2'
DOMAIN='arkheewebdev.com'
WEB_ROOTS='/var/www'
# vérifie qu'on est root
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
sudo /bin/bash $0 "$@"
exit $?
fi
ENABLED_URLS=$( grep -h /etc/apache2/sites-enabled/* -e 'ServerName ' | sed -E "s/ServerName (\w+).$DOMAIN*/\1/" | sort -u)
ASSEMBLED_ENABLED_URLS=$(printf ",\e[4m%s\e[0m" ${ENABLED_URLS[@]})
ASSEMBLED_ENABLED_URLS=${ASSEMBLED_ENABLED_URLS:1}
# choix du nom du site
echo -e " • Veuillez entrer un nom du site à supprimer parmi [$ASSEMBLED_ENABLED_URLS].$DOMAIN:"
read HOSTNAME
HOSTNAME=${HOSTNAME,,}
if [ -z $HOSTNAME ]; then
echo "Pas de nom de site, pas de script !"
exit
fi
# retrieve php version
PHP_VERSION=$( ls /etc/php/**/fpm/pool.d/$HOSTNAME.pool.conf | sed -E "s/.+php\/([a-z0-9.]+)\/(.+)/\1/" )
PHP_INI_DIR="/etc/php/$PHP_VERSION/fpm/pool.d"
PHP_FPM_INIT="/etc/init.d/php$PHP_VERSION-fpm"
# stop php-fpm processes
$PHP_FPM_INIT stop
# disable site & remove conf
a2dissite $HOSTNAME.$DOMAIN.conf
rm -f $APACHE_CONFIG/$HOSTNAME.$DOMAIN.conf
rm -f /var/lib/apache2/site/enabled_by_admin/$HOSTNAME.$DOMAIN
# remove phpfpm conf
rm -f /etc/php/**/fpm/pool.d/$HOSTNAME.pool.conf
# remove user & group
sudo userdel $HOSTNAME
sudo groupdel $HOSTNAME
# remove user things but not the httpdocs folder
find $WEB_ROOTS/$HOSTNAME -maxdepth 1 ! -name 'httpdocs' ! -path $WEB_ROOTS/$HOSTNAME -exec rm -rf {} +
echo -e " • Voulez-vous supprimer le contenu du site (\e[4m$WEB_ROOTS/$HOSTNAME/httpdocs\e[0m) [o/N] ?"
read DEL
if [ "$DEL" = "o" ]; then
rm -rf $WEB_ROOTS/$HOSTNAME
fi
# remove logs
rm -f /var/log/apache2/access.$HOSTNAME.$DOMAIN.log
rm -f /var/log/apache2/error.$HOSTNAME.$DOMAIN.log
# restart fpm
$PHP_FPM_INIT start
$APACHE_INIT reload
echo -e "\n • Le site \e[4mhttps://$HOSTNAME.$DOMAIN\e[0m à été supprimé.\n"