how to set up apache virtual hosts code example
Example 1: APACHE MULTIPLE HOstnames
# Ensure that Apache listens on port 80
Listen 80
<VirtualHost *:80>
DocumentRoot "/www/example1"
ServerName www.example.com
# Other directives here
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/www/example2"
ServerName www.example.org
# Other directives here
</VirtualHost>
Example 2: create a virtual host in apache
STEP 1:
# domain: DOMAIN_URL
# public: /var/www/DOMAIN_URL/public_html/public/
<VirtualHost *:80>
# Admin email, Server Name (domain name), and any aliases
ServerAdmin admin@DOMAIN_URL
ServerName DOMAIN_URL
ServerAlias DOMAIN_URL
# Index file and Document Root (where the public files are located)
DirectoryIndex index.html index.php
DocumentRoot /var/www/DOMAIN_URL/public_html/public/
<Directory /var/www/DOMAIN_URL/public_html/public/>
Options Indexes FollowSymLinks
DirectoryIndex index.php
AllowOverride All
Require all granted
Order allow,deny
allow from all
</Directory>
# Log file locations
LogLevel warn
ErrorLog /var/www/DOMAIN_URL/log/error.log
CustomLog /var/www/DOMAIN_URL/log/access.log combined
</VirtualHost>
STEP 2: With our virtual host files created, we must enable them. We’ll be
using the a2ensite tool to achieve this goal.
sudo a2ensite example.com.conf
STEP 3: When you are finished, you need to restart Apache to make these changes
take effect and use systemctl status to verify the success of the restart.
sudo systemctl restart apache2
refrence:
https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-18-04-quickstart