Update 11/08/12: For an up-to-date guide as to how to install Apache, MySQL and PHP on OSX 10.8 Mountain Lion, I would like to refer you to you Neil Gee's excellent guide.
Working in Web Development means you have to have a development environment installed on your local machine, in order to test and develop dynamic pages, using a web server (Apache,), a database (MySQL) and a scripting language (PHP). There are ways of getting those components installed in a bundle, like WAMP, LAMP or MAMP. But as a developer, you are more the manual type, right? So as I had to go through that installation process recently, this article documents the steps I went through.
OSX already comes with Apache installed, it is just a matter of starting the server. You can do this if you go to System Preferences > Sharing and check “Web Sharing”. The Apache default page should now be displayed at
Later on, you can use the following commands to start, stop or restart Apache:
$ sudo apachectl start
$ sudo apachectl stop
$ sudo apachectl restart
If you would like to change the DocumentRoot of the server, you need to edit the httpd.conf file:
$ sudo vi /etc/apache2/httpd.conf
In here, you need to change the DocumentRoot setting:
DocumentRoot "/Users/myUser/myNewWebroot/" <Directory "/Users/myUser/myNewWebroot/"> ... </Directory>
PHP comes bundled up with Leopard as well. The important things to know here are where it got installed and where to find the configuration file.
Most likely, it got installed to:
The configuration file should be located at:
You only need to make sure that Apache knows that PHP is available, so edit httpd.conf:
$ sudo vi /etc/apache2/httpd.conf
And add the following lines (in the appropriate sections, to keep things tidy):
AddType application/x-httpd-php-source .phps
LoadModule php5_module libexec/apache2/libphp5.so
Finished with that, restart Apache, empty the browser cache and then load a php file for testing if it is correctly interpreted.
Download the most recent dmg image from the MySQL site.
Before actually installing MySQL, I found it helps to restart the computer before proceeding with the installation. When running through the installation wizard, MySQL will get installed to:
So, for example:
Also, a symlink should have been created:
You should also install the Preference Pane, which comes with the installation package as MySQL.prefPane
To start MySQL manually, run the following command:
$ sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
You should also add MySQL to $PATH:
$ vi ~/.profile
$ export PATH=$PATH:/usr/local/mysql/bin
$ source ~/.profile
To check whether that was successful, run:
$ echo $PATH
The default settings for the root user are:
- Username: root
- Password: [leave blank]
To get PHPmyAdmin installed, which comes in handy for managing your database(s), download the latest package from their download page. Extract that package to a directory somewhere in your DocumentRoot.
Open config.sample.inc.php with an editor of your choice and add the following details for your MySQL installation:
/* * This is needed for cookie based authentication to encrypt password in * cookie */ $cfg['blowfish_secret'] = 'whatever'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */ $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = ''; // use here your password
After you made those changes, save the file as config.inc.php.
PEAR should also already be available on your Mac. The location is probably:
It is a good idea to add the path to PEAR to $PATH, similar to setting the path for MySQL (see above). In addition, upgrade PEAR to the latest version like so:
$ sudo pear channel-update pear.php.net
$ sudo pear upgrade PEAR