Так в новинку для nginx. На Ubuntu я установил nginx, использующий "sudo склонный - добираются, установка nginx" затем установила php5-fpm sudo apt get install php5-fpm
. Я выполнил шаги в: https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-12-04 и заставил nginx хорошо работать с php5-fpm
.
Это - соответствующий раздел от моего nginx файла конфигурации для включения проксирования fastCGI.
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Это работает отлично и php файлы, выполненные, как они, предполагают к.
Я затем загрузил nginx-1.7.3.tar.gz и создал если из источника:
--configure --prefix=/usr/local/nginx-1.7.3 make sudo make install
Таким образом, к настоящему времени у меня было бы две установки nginx. Первое использование apt-get install nginx
и этот, который был создан из источника. Я могу выполнить каждого по-другому sudo service nginx start
работает apt-get install version
и sudo /usr/local/nginx-1.7.3/sbin/nginx
выполняет версию, созданную из источника.
Для включения fastCGI, проксирующего на "созданный из источника" версия, я полагал, что это совпадает с первой установкой nginx, таким образом, блок местоположения nginx.conf файла для быстрого проксирования cgi идентичен первому.
НО
Версия, которая была создана из источника, кажется, не общается с php5-fpm
таким образом, я получаю ошибку:
Извините, страница, которую Вы ищете, в настоящее время недоступна.Пожалуйста, повторите попытку позже.
И в журнале ошибок для nginx говорится:2014/08/03 01:31:24 [crit] 8566#0: *1 connect() to unix:/var/run/php5-fpm.sock failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET /test.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "localhost"
Из-за моего отсутствия знаний я подозреваю, что делаю что-то действительно глупое, но я, может казаться, не понимаю это. Почему делает "созданный из источника" версия, дают ту ошибку при попытке соединиться с файлами, заканчивающимися .php?
Как указал zhenech, скорее всего, у вас проблемы с правами владельца/разрешениями на ваш socket-файл (/var/run/php5-fpm.sock).
В fpm-config (например, /etc/php5/fpm/pool.d/www.conf) попробуйте следующее:
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
ПРОБЛЕМА РЕШЕНА:
Мой /etc/nginx/nginx.conf
, который представляет собой конфигурацию для nginx, загруженного с sudo apt-get install nginx
имеет пользовательский параметр www-data;
, поэтому он может взаимодействовать с php5-fpm
, в то время как nginx-1.7.3 построен из источника, расположенного по адресу / usr /local/nginx-1.7.3/conf/nginx.conf
имеет значение пользователя пользователь никто;
.
Изменив user nobody;
на user www-data;
он начал взаимодействовать с php-fpm.