diff --git a/updated_install1.sh b/updated_install1.sh index 86dd324..85916c1 100644 --- a/updated_install1.sh +++ b/updated_install1.sh @@ -1,65 +1,53 @@ #!/bin/bash +# ====== CONFIGURATION ====== +HOSTNAME="wordpress.local" +IP="127.0.0.1" +SITE_CONF="/etc/apache2/sites-available/wordpress.conf" +WEB_ROOT="/srv/www/wordpress" +# ============================ + +# Update system apt update apt upgrade -y +# Install required packages apt install -y apache2 ghostscript libapache2-mod-php mysql-server php php-bcmath php-curl php-imagick php-intl php-json php-mbstring php-mysql php-xml php-zip -sudo mkdir -p /srv/www +# Create WordPress directory and download +mkdir -p /srv/www chown www-data: /srv/www -curl https://wordpress.org/latest.tar.gz | -u www-data tar zx -C /srv/www +curl https://wordpress.org/latest.tar.gz | sudo -u www-data tar zx -C /srv/www -cat << EOF | sudo tee /etc/apache2/sites-available/wordpress.conf > /dev/null +# Configure Apache VirtualHost +cat << EOF | sudo tee "$SITE_CONF" > /dev/null - DocumentRoot /srv/www/wordpress - + ServerName $HOSTNAME + DocumentRoot $WEB_ROOT + Options FollowSymLinks AllowOverride Limit Options FileInfo DirectoryIndex index.php Require all granted - + Options FollowSymLinks Require all granted EOF -a2ensite wordpress -a2enmod rewrite -a2dissite 000-default - -cat << EOF | sudo tee /etc/apache2/sites-available/wordpress.conf > /dev/null - - ServerName wordpress.local - DocumentRoot /srv/www/wordpress - - Options FollowSymLinks - AllowOverride Limit Options FileInfo - DirectoryIndex index.php - Require all granted - - - Options FollowSymLinks - Require all granted - - -EOF - -HOSTNAME="wordpress.local" -IP="127.0.0.1" -LINE="$IP $HOSTNAME" - -# Check if the entry already exists +# Add hostname to /etc/hosts if not already present if grep -q "$HOSTNAME" /etc/hosts; then echo "Entry for $HOSTNAME already exists in /etc/hosts." else echo "Adding $HOSTNAME to /etc/hosts..." - echo "$LINE" | sudo tee -a /etc/hosts > /dev/null + echo "$IP $HOSTNAME" | sudo tee -a /etc/hosts > /dev/null echo "Done." fi +# Enable site and modules, disable default a2ensite wordpress.conf -systemctl reload apache2 +a2enmod rewrite a2dissite 000-default.conf systemctl reload apache2 \ No newline at end of file