Nginx 504使用php-fpm超时

梅德韦杰夫

我为我的一个站点收到504网关超时。请帮忙找出原因?

这是我的nginx配置:

server {

    listen   80;
    server_name domain.com;
    root /home/user/domain.com;

    error_log /home/user/domain.com/error.log;

    location / {
        try_files $uri /index.php?q=$uri&$args;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass  unix:/var/run/php5-fpm.sock;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;

        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    }
}

Nginx错误日志:

$ sudo tail -n 1 domain.com/error.log 
2014/08/21 17:09:35 [error] 16790#0: *30 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 5.18.54.52, server: domain.com, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock", host: "domain.com"

而且在php-fpm日志中什么也没有:

sudo tail -n 1 /var/log/php5-fpm.log
[21-Aug-2014 17:08:31] NOTICE: ready to handle connections

这是我的www.conf:

$ sudo nano /etc/php5/fpm/pool.d/www.conf

pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 1
pm.max_spare_servers = 10

请帮我解决这个问题!谢谢!

Diemuzi

从PHP 5.5.12开始,更改了FPM套接字权限以解决与安全相关的错误,您可以在此处阅读有关此内容的更多信息-> https://bugs.php.net/bug.php?id=67060

listen.mode = 0660现在应该设为listen.mode = 0666您的FPM池配置的内部。还要确保您的listen.ownerlisten.group是与运行Nginx相同的用户名/组。这是我设置中的内容:

listen.owner = nginx
listen.group = nginx
listen.mode = 0666

我假设您的Nginx配置user www-data;然后只是简单地将nginx我上面引用更改为www-data

至于Nginx,这是我当前正在使用的工作示例:

# PHP-FPM Support
location ~ \.php$ {
    fastcgi_pass unix:/var/run/nginx.sock;
    include fastcgi.conf;
}

我认为您的Nginx配置很好,但是如果您想尝试一些不同的东西,我将发布我的配置作为对您的测试。

在进行任何配置更改后,请不要忘记重新启动PHP-FPM。

试试看,我确定它可以解决您的问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Wordpress-php-fpm中的超时504网关超时nginx

来自分类Dev

Nginx提供的PHP-FPM:504网关超时-Nginx

来自分类Dev

Django Nginx Gunicorn = 504超时

来自分类Dev

Nginx / GlassFish的504网关超时

来自分类Dev

Nginx 504超时初始wordpress安装

来自分类Dev

php-fpm的Nginx错误

来自分类Dev

PHPMailer使用nginx在我的Digital Ocean服务器上导致504超时错误

来自分类Dev

PHPMailer使用Nginx在我的Digital Ocean服务器上导致504超时错误

来自分类Dev

使用Django提供静态文件时,HTTP 504网关超时(Nginx + Gunicorn)

来自分类Dev

使用Nginx + PHP-FPM的PHP文件的访问被拒绝(403)

来自分类Dev

nginx和uWSGI给出“ 504网关超时”

来自分类Dev

Django的Nginx 504网关超时错误

来自分类Dev

安装php curl后出现504网关超时/ 502网关错误-服务器Nginx

来自分类Dev

Nginx / PHP-FPM“访问被拒绝。” 错误

来自分类Dev

Nginx php-fpm子目录

来自分类Dev

Nginx + Php-fpm的延迟问题

来自分类Dev

PHP-FPM + Laravel + Nginx + Ubuntu权限

来自分类Dev

Docker中的Nginx和php-fpm

来自分类Dev

Nginx / PHP-FPM“访问被拒绝。” 错误

来自分类Dev

NGINX + PHP-FPM权限被拒绝

来自分类Dev

PHP-FPM NGinx Pthreads Linux安装

来自分类Dev

nginx 和 php-fpm 502 错误

来自分类Dev

用于 nginx 和 php-fpm 的 Docker

来自分类Dev

docker 上的 NginX 和 Php-Fpm

来自分类Dev

使用nginx和php-fpm参数重写URI

来自分类Dev

使用NGINX作为Postgres代理的超时问题

来自分类Dev

URL重写以在我的Nginx PHP-FPM中删除.php

来自分类Dev

NginX + PHP-FPM显示空白的php页面

来自分类常见问题

如何正确链接php-fpm和Nginx Docker容器?