Step 1 — Creating the Directory Structure
sudo mkdir -p /var/www/your_domain_1/public_html sudo mkdir -p /var/www/your_domain_2/public_html
Step 2 — Granting Permissions
sudo chown -R $USER:$USER /var/www/your_domain_1/public_html sudo chown -R $USER:$USER /var/www/your_domain_2/public_html
หรือ
sudo chown -R www-data:www-data your_domain_1/public_html sudo chown -R www-data:www-data your_domain_2/public_html
sudo chmod -R 755 /var/www
Step 3 — Creating Default Pages for Each Virtual Host
nano /var/www/your_domain_1/public_html/index.html
<html> <head> <title>Welcome to your_domain_1!</title> </head> <body> <h1>Success! The your_domain_1 virtual host is working!</h1> </body> </html>
nano /var/www/your_domain_2/public_html/index.html
<html> <head> <title>Welcome to your_domain_2!</title> </head> <body> <h1>Success! The your_domain_2 virtual host is working!</h1> </body> </html>
Step 4 — Creating New Virtual Host Files
sudo nano /etc/apache2/sites-available/your_domain_1.conf
<VirtualHost *:80> ServerAdmin admin@your_domain_1 ServerName your_domain_1 ServerAlias www.your_domain_1 DocumentRoot /var/www/your_domain_1/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
sudo nano /etc/apache2/sites-available/your_domain_2.conf
<VirtualHost *:80> ServerAdmin admin@your_domain_2 ServerName your_domain_2 ServerAlias www.your_domain_2 DocumentRoot /var/www/your_domain_2/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Step 5 — Enabling the New Virtual Host Files
sudo a2ensite your_domain_1.conf sudo a2ensite your_domain_2.conf
sudo apache2ctl configtest
sudo systemctl restart apache2
sudo systemctl status apache2
Step 6 — (Optional) Setting Up Local Hosts File
sudo nano /etc/hosts
%windir%\system32\drivers\etc\hosts
127.0.0.1 localhost 127.0.1.1 guest-desktop your_server_IP your_domain_1 your_server_IP your_domain_2
Step 7 — Testing Your Results
http://your_domain_1
http://your_domain_2