Install Apache/PHP/MySQL on Snow Leopard

No Comments

If you design & develop websites and use a mac you’ll most definitely need to test code locally. A large percentage of today’s open source content management systems are built on Apache, PHP, MySQL and there are two common ways to make those three things work in Os X.

The first method is by using MAMP, which a lot of people do but most of the code ninjas I know all insist on running the versions of Apache and PHP that come with Os X and installing MySQL by hand. Here’s how to do it:

1. Apache
Start Apache

sudo apachectl start

Check to see if it’s working: http://localhost/

2. PHP

In /etc/apache2/httpd.conf, uncomment this line:

LoadModule php5_module libexec/apache2/

Restart Apache

sudo apachectl restart

Fix a warning appearing in phpinfo()
Create /etc/php.ini and make it writable

cd /etc
sudo cp php.ini.default php.ini
sudo chmod 666 php.ini

In php.ini, find this line:

;date.timezone =

Uncomment it and insert your time zone (

date.timezone =America/Vancouver

Restart Apache

sudo apachectl restart

3. MySQL

Download the MySQL package for Mac OS X.5 (32 or 64 bits depending on your machine)

Install everything in the package in this order: mysql, the startup item, the preference pane.

Start MySQL in the preference pane.

Test it’s working:


Fix mysql.sock location in php.ini
In /etc/php.ini, replace the three occurences of /var/mysql/mysql.sock by /tmp/mysql.sock

mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock

Restart Apache

sudo apachectl restart

Activate PHP short tags

In /etc/php.ini, under Language Options, change

short_open_tag = On

Restart Apache

sudo apachectl restart

Previous Post
The future of learning is here
Next Post
Rejected Chris Ware Magazine Cover

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.

This site uses Akismet to reduce spam. Learn how your comment data is processed.