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

Ошибка Nginx с сообщением об отказе в подключении к порту PHP-FPM

Недавно создайте стек LEMP под управлением PHP-FPM в Ubuntu 14.04 x64. Попытка получить доступ к PHP в моем корневом веб-каталоге. Браузер показывает 502 Bad Gateway, а журнал ошибок Nginx показывает следующее (мой IP и рабочий IP удалены):

TIME [error] 22838#0: *7 connect() failed (111: Connection refused) while connecting to upstream, client: [my personal IP], server: [production server IP], request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "[production server IP]"

Чтобы определить, запущен ли PHP-FPM, я выполняю:

ps -waux | grep php5

И я возвращаюсь в ответ:

root     22930  0.0  0.4 327432 16324 ?        Ss   10:10   0:00 php-fpm: master process (/etc/php5/fpm/php-fpm.conf) 

Как определить, на каком порту работает PHP-FPM или почему он не работает на этом порту? Спасибо.

Нашел:

Чтобы указать номер порта, вам нужно отредактировать "слушай ="в /etc/php5/fpm/pool.d/www.conf, однако я обнаружил, что теоретически более эффективно разрешить Nginx взаимодействовать через сокеты Unix, поэтому я поменял местами

127.0.0.1:9000

с участием

/var/run/php5-fpm.sock

Это был первый шаг ...

Затем мне пришлось заменить следующие строки в файле конфигурации моих сайтов (сайты доступны / по умолчанию):

fastcgi_pass 127.0.0.1:9000;

с участием

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

И теперь я готов к работе.

Если ваша служба (не только PHP-FPM) прослушивает порт, вы можете определить его, набрав sudo netstat -lntp:

# sudo netstat -lntp
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 192.168.16.121:3306     0.0.0.0:*               LISTEN      1427/mysqld     
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      1722/memcached  
tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      642/smbd        
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      21315/nginx     
tcp        0      0 127.0.0.1:81            0.0.0.0:*               LISTEN      25078/php-fpm.conf)

где вы можете видеть, что процесс PHP-FPM с pid 25078 использует 81 порт.