Create directories for a new site. E.g.
/var/www/sites/mysite.com/htdocs
/var/www/sites/mysite.com/logs
/var/www/sites/mysite.com/cg-bin
In /etc/apache2/conf.d/ create new file virtual.conf
#
# Running multiple virtual hosts.
#
NameVirtualHost *
/etc/apache2/sites-available
This contains configuration files for sites which are available but not necessarily enabled.
/etc/apache2/sites-enabled
This directory contains site files which are enabled.
Each configuration file in the sites-enabled directory is loaded when the server starts – whilst the files in sites-available are ignored.
Configuration files should be created in sites.available and later enabled by running a2ensite command if needed (see below).
Create /etc/apache2/sites-available/www.mysite.com with the following contents:
<VirtualHost *>
ServerAdmin webmaster@mysite.com
ServerName www.mysite.com
ServerAlias mysite.com
# Indexes + Directory Root
DirectoryIndex index.php index.html
DocumentRoot /var/www/sites/mysite.com/htdocs
# CGI Directory
ScriptAlias /cgi-bin/ /var/www/Sites/mysite.com/cg-bin
<Location /cgi-bin>
Options +ExecCG
</Location>
# Logfiles
ErrorLog /var/www/sites/mysite.com/logs/error.log
CustomLog /var/www/sites/mysite.com/logs/access.log combined
</VirtualHost>
Enable site:
a2ensite www.mysite.com
(To disable – a2dissite www.mysite.com)
This puts a symbolic link in sites-enabled
Restart apache:
/etc/init.d/apache2 reload
In addition (after changing from one website to multiple):
Delete: default in sites-available and 000-default in sites-enabled
Default site:
One of the sites is a default site. The default site is loaded when the server can’t match URL address.
It looks like the default site is the one which comes first in alphabetical order in sites-available folder.
To stop warning NameVirtualHost *:80 has no VirtualHosts when reloading apache
/etc/apache2/ports.conf
Comment:
#NameVirtualHost *:80
To stop warning apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName when reloading Apache
/etc/apache2/apache2.conf
Add Line:
ServerName www.mysite.com
Ubuntu Server 10.10
Leave a Reply