Introduction
This is a simple task, setting up my local machine so that I can browse directly to a hostname such as "mysite" and Apache will find the right project. This is a great way to test that paths will work as you expect when a site goes onto the production server. You will just need a config file in the site so it knows when it is on the development server (your local machine) and when it is live.As simple as this is, I always have to look it up every time I do it.
So, in the interests of improving my own efficiency and maybe helping someone else I am blogging my process.
Dependencies
Ubuntu Lucid: 10.04(Check this with: cat /etc/lsb-release )Apache/2.2.14 (Ubuntu)
(Check this with: /usr/sbin/apache2 -v )
Process
First go add the new site to yours hosts file, editsudo vi /etc/hosts
Then change or add the line:
127.0.0.1 localhost mysite
Next you need to configure Apache to recognise the site. You need to create a config file for your site in the sites-available directory:
/etc/apache2/sites-available/mysite
with something like the following contents:
<VirtualHost *:80>
ServerName mysite
DocumentRoot /home/username/mysite/www
<Directory /home/username/mysite/www>
Options Indexes FollowSymLinks Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
RewriteEngine On
RewriteOptions inherit
</VirtualHost>
Then, you just need to enable the site with the apache script a2ensite, like thus:
sudo a2ensite mysite
Then reload apache
sudo /etc/init.d/apache2 reload
...and voila!!! You can now browse directly to http://mysite