Назад | Перейти на главную страницу

Каталог fastcgi_pass недоступен на Apache + Nginx, как его найти?

у меня есть CentOS, Apache и Nginx монтаж. Оно использует php 5 обработчик как fcgi. Этот сервер использует WHM cpanel и easyapache. fcgi применить с помощью easyapache. Эти установки выполняются моей хостинговой компанией. Когда я добавляю следующий код в Nginx vhost это дает мне No such file or directory ошибка.

    location ~ .php$ {
            try_files $uri /index.php;
            include fastcgi_params;
            fastcgi_pass unix:/var/run/php5-fpm.sock;

Когда я ищу .sock файл на сервере, он не отображается .sock файл расширения. Как мне найти правильный fastcgi_pass каталог и файл в этом VPS?

Я предполагаю, что php-fpm демон, безусловно, привязан к TCP-порту, а не к сокету Unix.

Открыть свой www.conf файл и проверьте, есть ли у вас что-то вроде этого:

listen = 127.0.0.1:9000

и / или:

netstat -anp | grep -i fpm | grep -i listen
tcp     0      0 127.0.0.1:9000        0.0.0.0:*     LISTEN      2640/php-fpm

На моем CentOS 6.5 файл www.conf находится здесь: /etc/php-fpm.d/www.conf. Это может быть другое место в вашей системе. Ищи это!

Если php-fpm привязан к TCP-порту, у вас есть 2 варианта:


Опция 1 :

Держите ваши www.conf без изменений:

listen = 127.0.0.1:9000

Но измените свой Nginx vhost как это :

fastcgi_pass 127.0.0.1:9000;

Вариант 2:

Держите ваши Nginx vhost без изменений:

fastcgi_pass unix:/var/run/php-fpm.sock;

Но измените свой www.conf как это :

;listen = 127.0.0.1:9000
listen = /var/run/php-fpm.sock;