Nginx 出现504 Gateway Time-out的解决方法

avatar 2023年10月10日18:45:04 评论 922 次浏览

今天在处理异常的时候发现一个问题,通过nginx上传文件,总是出现时不时的504的错误,正常504的报错就是超时,原本想着增减请求时间的的,不过请求时间已经增加了,还是一样的错误。这个问题就需要考虑了,参考下面的解决方法。

问题处理: 1、修改/etc/nginx/nginx.conf,添加如下信息:

 http {
     include       /etc/nginx/mime.types;
     default_type  application/octet-stream;
 
     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                       '$status $body_bytes_sent "$http_referer" '
                       '"$http_user_agent" "$http_x_forwarded_for"';
 
     access_log  /var/log/nginx/access.log  main;
 
     sendfile on;
     #tcp_nopush on;
 
     keepalive_timeout 65;
 
     #gzip on;
 
     include /etc/nginx/conf.d/*.conf;
     #用于tomcat反向代理,解决nginx 504错误 
     proxy_connect_timeout 300; #单位秒 
     proxy_send_timeout 300; #单位秒 
     proxy_read_timeout 300; #单位秒 
     proxy_buffer_size 16k; 
     proxy_buffers 4 64k; 
     proxy_busy_buffers_size 128k; 
     proxy_temp_file_write_size 128k;
     # ps:以timeout结尾配置项时间要配置大点
 }

2、修改server{},添加如下信息:

 location / {
         proxy_pass http://182.61.131.62:33060/;
         proxy_redirect  off;
         proxy_send_timeout 300;
         proxy_read_timeout 300;
         proxy_connect_timeout 300;
 
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 }

两者可以选择其中一种,server下是针对单个反向代理服务的,在nginx.conf里是整个nginx服务的,看自己的请求具体分析即可。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: