| Server IP : 138.197.107.151 / Your IP : 216.73.217.10 Web Server : Apache/2.4.58 (Ubuntu) System : Linux BloxBy-Builder 6.8.0-71-generic #71-Ubuntu SMP PREEMPT_DYNAMIC Tue Jul 22 16:52:38 UTC 2025 x86_64 User : wpbetasites_mrakzqskir ( 1022) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/bloxbycommands/ |
Upload File : |
#!/bin/bash
set -euo pipefail
# === Default values ===
WEBSITES_FOLDER=""
WPSITE=""
DYNAMIC_SITE=""
SFTP_GROUP="sftpusers"
DOMAINCLI=""
# === Named parameter parsing ===
while [[ $# -gt 0 ]]; do
case "$1" in
--folder) WEBSITES_FOLDER="$2"; shift 2 ;;
--wpsite) WPSITE="$2"; shift 2 ;;
--site) DYNAMIC_SITE="$2"; shift 2 ;;
--domain) DOMAINCLI="$2"; shift 2 ;;
*) echo "โ Unknown option: $1"; exit 1 ;;
esac
done
# === Validate Inputs ===
if [[ -z "$WEBSITES_FOLDER" || -z "$WPSITE" || -z "$DYNAMIC_SITE" || -z "$DOMAINCLI" ]]; then
echo "โ Usage: ./remove_site.sh --folder sites --wpsite wp --site xynine"
exit 1
fi
# === Derived Variables ===
SFTP_USER="${WPSITE}_${DYNAMIC_SITE}"
DB_NAME="db_${WPSITE}_${DYNAMIC_SITE}"
DB_USER="db_user_${WPSITE}_${DYNAMIC_SITE}"
DOMAIN="${DOMAINCLI}.silversharkdev.bloxby.io"
WEB_HOME="/var/www/${WEBSITES_FOLDER}/${SFTP_USER}"
VHOST_FILE="/etc/apache2/sites-available/${DOMAIN}.conf"
SSL_VHOST_FILE="/etc/apache2/sites-available/${DOMAIN}-le-ssl.conf"
MYSQL_ROOT_PASSWORD="b?9O1i#Z/-S?Pv9O31r8"
echo "๐ง Removing site: $DOMAIN"
# === Remove Apache vhost and disable ===
if [[ -f "$VHOST_FILE" ]]; then
echo "๐งน Disabling Apache site: $DOMAIN"
a2dissite "${DOMAIN}.conf" || true
rm -f "$VHOST_FILE"
fi
if [[ -f "$SSL_VHOST_FILE" ]]; then
echo "๐งน Removing SSL vhost: $SSL_VHOST_FILE"
a2dissite "${DOMAIN}-le-ssl.conf" || true
rm -f "$SSL_VHOST_FILE"
fi
systemctl reload apache2
# === Delete certbot SSL certificates ===
if command -v certbot &>/dev/null; then
echo "๐ Deleting Certbot SSL certificates"
certbot delete --cert-name "$DOMAIN" --non-interactive || true
fi
# === Delete database and user ===
echo "๐๏ธ Deleting MySQL DB and user"
mysql -u root -p"${MYSQL_ROOT_PASSWORD}" <<MYSQL
DROP DATABASE IF EXISTS \`${DB_NAME}\`;
DROP USER IF EXISTS '${DB_USER}'@'localhost';
FLUSH PRIVILEGES;
MYSQL
# === Delete SFTP user ===
if id "$SFTP_USER" &>/dev/null; then
echo "๐ค Removing SFTP user: $SFTP_USER"
userdel -r "$SFTP_USER" || true
fi
# === Remove web files manually if still present ===
if [[ -d "$WEB_HOME" ]]; then
echo "๐งผ Removing web root directory: $WEB_HOME"
rm -rf "$WEB_HOME"
fi
echo "โ
Site removed successfully!"