小锐技术blog 一个分析技术心得的地方

nginx配置,nginx 504Gateway Time-out 解决办法,nginx实现两个服务器负载均衡

使用nginx配置两台服务器的均衡负载后,浏览器控制台出现报错: 504Gateway Time-out。


一般这个错误是nginx配置不合理造成的,可以在http中增加如下配置进行改善:


fastcgi_connect_timeout 300; 

    fastcgi_send_timeout 300; 

    fastcgi_read_timeout 300; 

    fastcgi_buffer_size 64k; 

    fastcgi_buffers 4 64k; 

    fastcgi_busy_buffers_size 128k; 

    fastcgi_temp_file_write_size 128k;

并且修改连接时间(请求时间比较长,建议改此处):


     proxy_connect_timeout       18000;

     proxy_read_timeout          18000;

     proxy_send_timeout          18000; 

 


下面是我的nginx配置:


 

#user  nobody;

worker_processes  1;

 

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

 

#pid        logs/nginx.pid;

 

 

events {

    worker_connections  1024;

}

 

 

http {

    client_max_body_size 128m;

    include       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  logs/access.log  main;

 

    sendfile        off;

    #tcp_nopush     on;

 

    #keepalive_timeout  0;

    keepalive_timeout  65;

fastcgi_connect_timeout 300; 

    fastcgi_send_timeout 300; 

    fastcgi_read_timeout 300; 

    fastcgi_buffer_size 64k; 

    fastcgi_buffers 4 64k; 

    fastcgi_busy_buffers_size 128k; 

    fastcgi_temp_file_write_size 128k;

 

    #gzip  on;

 

    upstream backend{

#ip_hash;

server 49.x.xx.xx4:8080 weight=5 max_fails=2 fail_timeout=600s; 

server 114.xxx.xxx.x6:8080 weight=5 max_fails=2 fail_timeout=600s;

 

        #server localhost:8081; 

    }  

    server {

        listen       80;

        server_name  114.xxx.xxx.x6;

        location / {

 

            proxy_buffering off;

 

            proxy_pass http://backend;

#root html;

proxy_set_header Host $host;

    proxy_set_header X-Real-IP $remote_addr;

    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_connect_timeout       18000;

    proxy_read_timeout          18000;

    proxy_send_timeout          18000; 

 

        }

 

 

 

    }

 

    

 

 

    # another virtual host using mix of IP-, name-, and port-based configuration

    #

    #server {

    #    listen       8000;

    #    listen       somename:8080;

    #    server_name  somename  alias  another.alias;

 

    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}

 

 

    # HTTPS server

    #

    #server {

    #    listen       443 ssl;

    #    server_name  localhost;

 

    #    ssl_certificate      cert.pem;

    #    ssl_certificate_key  cert.key;

 

    #    ssl_session_cache    shared:SSL:1m;

    #    ssl_session_timeout  5m;

 

    #    ssl_ciphers  HIGH:!aNULL:!MD5;

    #    ssl_prefer_server_ciphers  on;

 

    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}

 

}

 


留言列表
发表评论
来宾的头像