Nginx 错误说明连接被拒绝到 PHP-FPM 端口

spa*_*cle 6 nginx php-fpm 502-error

在 Ubuntu 14.04 x64 上新创建运行 PHP-FPM 的 LEMP 堆栈。试图访问我的 webroot 中的一些 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]"
Run Code Online (Sandbox Code Playgroud)

要确定 PHP-FPM 是否正在运行,我执行:

ps -waux | grep php5
Run Code Online (Sandbox Code Playgroud)

我回来回应:

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

如何确定 PHP-FPM 在哪个端口上运行或为什么它不在该端口上运行?谢谢你。

spa*_*cle 12

找到了:

为了指定端口号,您需要编辑/etc/php5/fpm/pool.d/www.conf 中的“ listen = ”指令,但是我发现理论上允许 Nginx 通过 Unix 套接字进行通信更有效所以我换了

127.0.0.1:9000
Run Code Online (Sandbox Code Playgroud)

/var/run/php5-fpm.sock
Run Code Online (Sandbox Code Playgroud)

那是第一步……

然后我不得不在我的站点配置文件(站点可用/默认)中替换以下几行:

fastcgi_pass 127.0.0.1:9000;
Run Code Online (Sandbox Code Playgroud)

fastcgi_pass unix:/var/run/php5-fpm.sock;
Run Code Online (Sandbox Code Playgroud)

现在我开始运行了。