I didn't find any documentation specific to my situation of developing in osx and using the homebrew package manager. I hope to provide some useful configuration file settings, directory paths, comments, and a reference for myself.
This is intended for performing development work on a mac, not running a live production system.
I am running OSX 10.7. 5.
Add the php repository and install, adding compile flags for php-fpm and other tools you will be working with, such as mysql. For a list of options one may type 'brew options php54'
$ brew tap josegonzalez/homebrew-php
$ brew install php54 --with-fpm --with-mysql
In another terminal start php-fpm
$ php-fpm
This will start php-fpm in the foreground, nice for debugging and seeing that everything is working. Later one can use php-fpm -D to daemonize it.
Start nginx
$ sudo nginx
Test it by entering http://localhost into your web browser. A welcome page should appear. The welcome page is located in /usr/local/Cellar/nginx/1.2.5/html/index.html
Edit the configs
I will use vi but any text editor is fine such as nano.
php-fpm
The config file for php-fpm is called php-fpm.conf and is found in /usr/local/etc/php/5.4 along with php.ini . I left most of the settings alone, but made a backup copy of the file and setpid = run/php-fpm.pid
which tells it to create php-fpm.pid in /usr/local/var/run. This might be useful for a startup script, and nice to see something that says php-fpm is running and reading the config file. One can also set the port, error log, and a bunch of other things in php-fpm.conf.
Set the PHP date.timezone to your time zone
$ vi /usr/local/etc/php/5.4/php.ini
date.timezone = Europe/Berlin
nginx.conf
nginx.conf is located in /usr/local/etc/nginx.
Make a backup of nginx.conf
Create a folder for logs
$ mkdir /usr/local/var/log/nginxMake a backup of nginx.conf
Create a folder for logs
In nginx.conf update
error_log /usr/local/var/log/nginx/error.log;
In the http section
access_log /usr/local/var/log/nginx/localhost.access.log main;
In the server section
listen 80;
add
root /Users/homedir/php-projects;
index index.html index.php;
Update
location ~ \.php$ {
root /usr/local/var/www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME document_root$fastcgi_script_name;
include fastcgi_params;
}
Complete nginx.conf
Reload nginx
$ sudo nginx -s reload
Create a test index.php file in your php projects folder and test it out.
Credits
http://interfacelab.com/nginx-php-fpm-apc-awesome/http://www.group7even.com/blog/2012/02/23/installing-nginx-php-fpm-on-os-x-mountain-lion-10-8/