The detailed guide on how to go this can be found here.
This post is a quick reference guide that you’ll mostly find useful if you’ve done it before.
First create the folders to put your files in:
cd /home/www mkdir mysite.net mkdir mysite.net/htdocs mkdir mysite.net/cgi-bin mkdir mysite.net/logs
Then set the appropriate permissions on the folders
chmod -R 755 mysite.net/htdocs
The apache configuration files are located in /etc/apache2/sites-available, so locate a suitable config file to start from in that folder, make a copy of it, and edit it appropriately.
Your finished config file might look something like this:
# This configuration file is for mysite.net <VirtualHost *> ServerAdmin webmaster@mysite.net ServerNameĀ www.mysite.net ServerAlias mysite.net # Indexes + Directory Root. DocumentRoot /home/www/mysite.net/htdocs/ <Directory /> DirectoryIndex index.php index.html Options FollowSymLinks AllowOverRide All </Directory> # CGI Directory ScriptAlias /cgi-bin/ /home/www/mysite.net/cgi-bin/ <Location /cgi-bin> Options +ExecCGI </Location> # Logfiles ErrorLogĀ /home/www/mysite.net/logs/error.log CustomLog /home/www/mysite.net/logs/access.log combined </VirtualHost>
Good, now to enable your new site, execute
a2ensite mysite.net /etc/init.d/apache2 reload
and you’re done!