How to add Virtual hosts in Snow Leopard OSX

by 9:04 AM 6 comments
I wiped my Old(ish) Macbook and upgraded to Snow Leopard this gave my Core Duo 1.8ghz 2g ram macbook a lease of new life. I needed to re-setup my local dev enviroment and noticed a few people where unsure how to setup vhosts with apache default install with OSX 10.6/10.5/10.4 so here it is step by step.

Edit the hosts file to add a local DNS entry.

Add the domain name you wish to use is the loopback IP do not change this IP.

Create the folders and files for the local website. I chose to place the log files for apache in the site folder and the website content under a sub folder www.

Edit httpd.conf I used path finder here to show the locations.

You can also use VI or any text editor

On line 465 uncomment: Include /private/etc/apache2/extra/httpd-vhosts.conf and save the file.

Edit: /etc/apache2/extra/httpd-vhosts.conf

Add in the details of the new virtual host and save:
( I'm running Railo on Tomcat locally so I have so additional parameters )

I also set my logging levels to log as much as possible.

Notice the location of the logs files matched the access.log and error.log files created earlier

Run: apachectl -t
to confirm there are no syntax errors.
I choose to leave the example sites, they cause a warning but it wont stop apache.
Then restart apache: sudo apachectl restart

Create a test file in the new folder for the virtual host ( /Users/Paul/Sites/paulsDev/www )

Confirm the new virtual host works:

If you'd like to watch the logs in a terminal you can use tail:
tail -f /the/Path/to/the/log/file

BTW Dave made a great How-to on setting up Tomcat and Railo on OSX which you can view here.


  1. uhm, excuse me. Wow

  2. THanks so much! I have been wrestling with this for a few days. Do your .htacces files work under this setup? I still can't get mine to engage eventhough I now have the virtual hosts in place. Thanks again

  3. Good question. Locally I am not using mod_rewrite but you will need to add this block when defining the vhost:

    %Directory /Users/Paul/Sites/paulsDev/www%
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Order allow,deny
    allow from all

    *note I swapped % for <

  4. Hi there,

    I have no Include /private/etc/apache2/extra/httpd-vhosts.conf

    What do I do

  5. Try this:

    sudo vi /etc/apache2/extra/httpd-vhosts.conf