Я очень много начинаю с NGINX и Server Admin.
Я использовал это руководство для установки NGINX / PHP / mySQL / WordPress:
В этом руководстве настройка backend php-cgi настраивается с помощью fastcgi. php5-fpm был установлен во время этого руководства:
apt-get install nginx-full php5-fpm php5 php5-mysql php5-apc php5-mysql php5-xsl php5-xmlrpc php5-sqlite php5-snmp php5-curl
Прочитав, что конфигурация NGINX в кодеке WordPress более безопасна, чем в большинстве руководств, я решил использовать конфигурацию кодекса:
Конфигурация WordPress NGINX в Кодексе
Конфигурация Codex использует php-fpm для backend php-cgi. При открытии браузера я получил ошибку 502 Bad Gateway. Журнал ошибок был:
"2012/06/10 21:18:27 [критический] 14009 # 0: * 4 connect () to unix: /tmp/php-fpm.sock не удалось (2: нет такого файла или каталога) при подключении к восходящему потоку, клиенту : 12.3.456.789, сервер: mywebsite.com, запрос: "GET / HTTP / 1.1", восходящий поток: "fastcgi: // unix: /tmp/php-fpm.sock:", хост t: "mywebsite.com" "
В основном файле конфигурации NGINX, предоставленном кодексом, я заметил строку, начинающуюся с "server unix:" в восходящем блоке php, которая указывает на пустой каталог:
# Upstream to abstract backend connection(s) for PHP.
upstream php {
server unix:/tmp/php-fpm.sock;
# server 127.0.0.1:9000;
}
Я проверил папку в / tmp, и она была пуста.
Кажется, я пропустил настройку php-fpm для игры с NGINX.
Может ли кто-нибудь указать мне правильное направление?
Очень признателен!
Похоже, вы не настроили php-fpm для прослушивания через сокет Unix. Я предполагаю, что вы используете какой-то Debian, поскольку инструкции, которым вы следуете, предназначены для Debian.
В моей конфигурации Debian / nginx / php у меня есть этот файл: /etc/php5/fpm/pool.d/www.conf
Вам нужно отредактировать это, чтобы позволить php-fpm прослушивать сокет Unix, а не адрес 127.0.0.1:9000.
Найдите линию в /etc/php5/fpm/pool.d/www.conf
что читает listen = 127.0.0.1:9000
и измените его на /tmp/php-fpm.sock
(или закомментируйте и добавьте listen = /tmp/php-fpm.sock
под этим). Или, может быть, вы хотите сохранить файл php-fpm.sock где-нибудь, кроме tmp. Google, вероятно, может вам в этом помочь.