Установка Nginx + PHP-FPM + PostgreSQL на Mac OS X (Mavericks) при помощи Homebrew

Шаг 1: установка Homebrew

Homebrew — это менеджер пакетов для OS X, как apt-get для Debian или yum для Red Hat.

Перед установкой Homebrew необходимо установить Apple Developer command line tools, для этого надо установить Xcode из Mac App Store, запустить его и выбрать пункт меню XcodePreferencesDownloads и кликнуть кнопку Install на пункт command line tools.

После установки Xcode и command line tools можно установить Homebrew:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

В процессе установки надо только ввести свой пароль. После установки надо выполнить команду

brew doctor

и, возможно, исправить ошибки/конфликты, связанные с символическими ссылками.

Шаг 2: установка и запуск Nginx

С помощью Homebrew установить Nginx предельно просто:

brew install nginx

Docroot свежеустановленного Nginx будет находиться в /usr/local/var/www.

Порт по умолчанию в настройках /usr/local/etc/nginx/nginx.conf выставлен 8080, так что веб-сервер можно запускать не имя прав root.

Чтобы Nginx запускался при логине необходимо выполнить команду:

ln -sfv /usr/local/opt/nginx/*.plist ~/Library/LaunchAgents

Чтобы запустить Nginx:

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist

Или, не используя launchctl, просто выполнить команду:

nginx

Хост по умолчанию: localhost:8080

Настройки nginx находятся в /usr/local/etc/nginx.

Шаг 3: установка и запуск PHP-FPM и APC

Добавляем репозиторий с PHP-FPM:

brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php

Устанавливаем PHP 5.4 + FPM + поддержку PostgreSQL:

brew install php54 --with-pgsql --with-fpm

Настройки PHPphp.ini находятся здесь:

/usr/local/etc/php/5.4/php.ini

Для автоматического запука PHP-FPM при логине выполняем команду:

ln -sfv /usr/local/opt/php54/*.plist ~/Library/LaunchAgents

Загрузить PHP-FPM:

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.php54.plist

Скрипт для управлния PHP-FPM находится в /usr/local/Cellar/php54/5.4.21/sbin/php54-fpm (цифры версии изменяются со временем ;) ).

Шаг 4: установка и запуск PostgreSQL

Установка проста:

brew install postgresql

Установка указанной версии — чуть больше команд:

cd /usr/local/Library/Formula/
brew versions postgresql
# 9.3.1 git checkout 89b2d08 /usr/local/Library/Formula/postgresql.rb
# 9.3.0 git checkout ae59e09 /usr/local/Library/Formula/postgresql.rb
# 9.2.4 git checkout e3ac215 /usr/local/Library/Formula/postgresql.rb
git checkout e3ac215 /usr/local/Library/Formula/postgresql.rb
brew install postgres

Создаём database cluster:

initdb /usr/local/var/postgres -E utf8

Запускаем Postgres:

postgres -D /usr/local/var/postgres

Для автоматического запуска при логине:

ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents

Теперь можно создавать пользователей Postgres и базы данных:

createuser -d -P postgres
createdb some_db