17

我不知道为什么每次尝试打开页面时都会出现此错误:

2013/04/06 17:52:19 [error] 5040#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET /info.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "localhost:8080"
4

5 回答 5

39

我解决了,这是一个配置文件问题,我补充说:

location ~ .php$ {
    try_files $uri =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
}
于 2013-04-06T18:27:13.173 回答
18

对我来说,问题是我的 php-fpm 服务没有运行。您可以通过运行来检查它:

service php-fpm status

并通过运行启动它

service php-fpm start

有时 php-fpm 可能会破坏正在运行的实例,从而阻止重新启动。此命令是清除它们并重新启动 php-fpm 的一种干净方法

killall -9 php-fpm; service php-fpm restart
于 2013-12-16T20:24:06.560 回答
3

如前所述更新您的配置:

location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}

但不要忘记在更新后重新启动 nginx 服务器和 php-fpm

sudo /etc/init.d/nginx restart
sudo /etc/init.d/php-fpm restart
于 2013-12-17T11:43:38.083 回答
3

我发现我在 Debian Jessie (8.3) 实例上的 Docker 中运行 PHP7 时遇到了同样的问题。

  • 运行命令“ps -aux”显示 php-fpm 没有运行
  • 运行 'php-fpm -D' 将其作为去守护进程启动。
  • 重新运行 'ps -aux' 表明 php-fpm 确实在运行
  • 刷新我的测试页面向我显示了服务器 PHP 信息。

在我的 start.sh 脚本中添加了“php-fpm -D”,以便每次加载容器时都会启动。

希望这可以帮助某人。

于 2016-02-05T19:20:20.803 回答
0

使用 fastcgi_pass unix:/var/run/php5-fpm.sock;只有 nginx 和 php 安装相同的服务器。如果 nginx 和 php 安装在其他服务器上,你必须使用 fastcgi_pass ip server:port;

于 2015-06-02T08:22:21.867 回答