Linux - Apache - Delete virtualhost.sh
#!/bin/bash
#
# ------------------------------------------------------------
# Author: Enrico Boldori
# Description: Apache VirtualHost deletion script
#
# Script function:
# This script helps in deleting an Apache VirtualHost.
# ------------------------------------------------------------
if [ $# -ne 1 ]
then
echo "Usage: $0 vHostName"
exit 1
fi
VHOST=$1
VHOST_FILENAME="/etc/apache2/sites-available/${VHOST}.conf"
VHOST_FOLDER="/var/www/${VHOST}/"
# Disabilito il VirtualHost
a2dissite ${VHOST}
service apache2 reload
echo "VirtualHost disattivato."
# Elimino il file di configurazione
CHOICE="n"
echo -n "Eliminare il file di configurazione (${VHOST_FILENAME}) [y/n]? "
read CHOICE
if [ ${CHOICE} == "y" ]
then
rm ${VHOST_FILENAME}
fi
# Mostro il listing della directory prima di eliminarla
echo "+-------------------------------------------------+"
echo "| VirtualHost directory listing |"
echo "+-------------------------------------------------+"
echo ""
ls -lha ${VHOST_FOLDER}
if [ -d "${VHOST_FOLDER}/html" ]
then
echo "+-------------------------------------------------+"
echo "| VirtualHost directory listing (/html folder) |"
echo "+-------------------------------------------------+"
echo ""
ls -lha "${VHOST_FOLDER}/html"
fi
# Elimino la cartella del virtualhost
CHOICE="n"
echo "+-------------------------------------------------+"
echo "| ATTENZIONE! |"
echo "+-------------------------------------------------+"
echo ""
echo "Il prossimo comando può essere fatale."
echo ""
echo "Controllare attentamente il percorso mostrato."
echo -n "Eliminare la cartella contenente i dati (${VHOST_FOLDER}) [y/n]? "
read CHOICE
if [ ${CHOICE} == "y" ]
then
rm -rvf ${VHOST_FOLDER}
fi
echo "VirtualHost eliminato"