Enrico Boldori / Wiki

« Go back ⤓ Download

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"