- Download and install MySQL Package file [MySQL 5.1 for 10.5 (x86_64)]
- Install MySQL Startup Item [Howto]
- Turn on Web Sharing in System Preferences -> Sharing

- Copy /etc/php.ini.default to /etc/php.ini
sudo cp /etc/php.ini.default /etc/php.ini
- Add timezone information to php.ini (PHP will error without this)
date.timezone = 'America/New_York'
- Install php-mcrypt
- Download libmcrypt 2.5.8
- Build and install .
./configure --disable-posix-threads --enable-dynamic-loading make sudo make install
- Download PHP 5.3.1
- Navigate to php-5.3.1/ext/mcrypt/
- Build and install .
phpize ./configure make sudo make install
- Add extension to php.ini
extension=mcrypt.so
- Install APC
- Download PCRE 8.0
- Build and install .
./configure make sudo make install
- Download APC 3.1.3p1
- Navigate to APC-3.1.3p1/APC-3.1.3p1/
- Build and install .
phpize ./configure make sudo make install
- Add extension to php.ini
extension=apc.so
- Download and install MySQL-python 1.2.3c1
sudo python setup.py install
- Download and install libjpeg.v7
./configure --enable-shared make sudo make install
- Download and install Python Imaging Library 1.1.6
sudo python setup.py install
Archive for November, 2009
Save the following as /System/Library/LaunchDaemons/org.mysql.mysqld.plist
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>RunAtLoad</key> <true/> <key>Umask</key> <integer>7</integer> <key>UserName</key> <string>_mysql</string> <key>Disabled</key> <false/> <key>WorkingDirectory</key> <string>/usr/local/mysql</string> <key>GroupName</key> <string>_mysql</string> <key>KeepAlive</key> <true/> <key>Program</key> <string>/usr/local/mysql/bin/mysqld</string> <key>Label</key> <string>org.mysql.mysqld</string> <key>ProgramArguments</key> <array> <string>--user=_mysql</string> </array> </dict> </plist>
And in a bash session, run the following:
sudo chown root:wheel /System/Library/LaunchDaemons/org.mysql.mysqld.plist sudo launchctl load /System/Library/LaunchDaemons/org.mysql.mysqld.plist sudo launchctl start org.mysql.mysqld
If you don’t use MacPorts, and have a hard time finding a startup plist file for Nginx, and had trouble getting Nginx to startup with your custom plist file, this might be your solution:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>nginx</string>
<key>Program</key>
<string>/usr/local/nginx/sbin/nginx</string>
<key>KeepAlive</key>
<true/>
<key>NetworkState</key>
<true/>
<key>LaunchOnlyOnce</key>
<true/>
</dict>
</plist>
Just save this as /System/Library/LaunchDaemons/org.nginx.nginx.plist and perform the following in a bash session:
sudo chown root:wheel /System/Library/LaunchDaemons/org.nginx.nginx.plist sudo launchctl load /System/Library/LaunchDaemons/org.nginx.nginx.plist sudo launchctl start org.nginx.nginx
