Apache setup & Virtual servers
Initial setup
Install packages sudo apt install apache2 mariadb-server libapache2-mod-php php-mysql -y
Open ports at cd /etc/apache2/ports.conf and add the line Listen NEW_PORT_NUMBER
Creating virtual servers
Create a file named NAME.conf and add something like this
<VirtualHost *:80>
ServerName pdb.conorbriggs.com.au
DocumentRoot /mnt/drives/10tb/10tb/web_servers/pdb/
<Directory /mnt/drives/10tb/10tb/web_servers/pdb/>
Options -Indexes -FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/pdb-error.log
CustomLog /var/log/apache2/pdb-access.log combined
RewriteEngine on
</VirtualHost>
Enable the site & restart apache with sudo a2ensite site.conf && systemctl restart apache2
SSL Certificate management
Install certbot and run setup
sudo apt install certbot python3-certbot-apache
a2enmod ssl
sudo certbot --apache
List all certificates with
certbot certificatesDelete a certificaite
certbot delete --cert-name CERT_NAME_HEREManaging the apache2 service
Start, stop & restart sudo service apache2 start/restart/stop
Enable a config
sudo a2ensite SITE_CONF_FILE.confDisable a config
sudo a2dissite SITE_CONF_FILE.conf