您的位置:首页 > 运维架构 > 反向代理

nginx 反向代理 504 错误

2016-01-21 15:03 435 查看
转载

之前的代理服务器Nginx 配置是这样的

server {
listen  80;
server_name     *.*;
location / {
proxy_pass http://192.168.0.100:8001; proxy_set_header host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-ip $remote_addr;
proxy_redirect default;
}
}

普通访问没有问题,一旦运行长时间的PHP程序(60秒左右)就会报504错误

通过查询nginx 官方文档http://nginx.org/en/docs/http/ngx_http_proxy_module.html得知

代理请求

proxy_connect_timeout 连接超时 默认为60秒

proxy_read_timeout 读取超时 默认为60秒

proxy_send_timeout 发送超时 默认为60秒

而长时间运行的php程序 ,在到了60秒之后 会被中断链接 ,受 proxy_read_timeout 和 proxy_send_timeout 设置影响

为了保证代理服务器运行 长时间的php程序 而不被 自动中断,修改配置内容为以下内容

server {
listen  80;
server_name     *.*;
location / {
proxy_pass http://192.168.0.100:8001; proxy_connect_timeout 60s;
proxy_read_timeout 5400s;
proxy_send_timeout 5400s;
proxy_set_header host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect default;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: