V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
vipper
V2EX  ›  NGINX

Nginx 配置反向代理和负载均衡提示 400 Bad Request

  •  
  •   vipper · 2017-05-03 16:04:43 +08:00 · 3387 次点击
    这是一个创建于 2780 天前的主题,其中的信息可能已经有所发展或是发生改变。

    拓扑:

    S1:Nginx 服务器

    S1-1:amh 搭建的 web 环境,分别有 2 个页面一个静态网页一个动态网页

    S1-2:amh 搭建的 web 环境,分别有 2 个页面一个静态网页一个动态网页

    一共 3 台服务器

    S1,Nginx 配置

    http { upstream webload{ server 45.63.. weight=1; server 45.77.. weight=2; }

    server { listen 80; server_name root.****.vip; location / { proxy_pass http://webload; proxy_set_header X-Real-IP $remote_addr; } }

    S1-1,Nginx 配置 server { listen 80; server_name 45.77..; #server_name end index index.html index.htm index.php; #index end

        set $subdomain '';
        root  /home/wwwroot/S1-1/web$subdomain;
        include rewrite/amh.conf; #rewrite end
    
        #error_page
                error_page 400 /ErrorPages/400.html;
                error_page 403 /ErrorPages/403.html;
                error_page 404 /ErrorPages/404.html;
                error_page 502 /ErrorPages/502.html;
        location ~ /ErrorPages/(400|401|403|404|405|502|503)\.html$
        {
                root /home/wwwroot/S1-1/web;
        }
    
    
        location ~ .*\.php$
        {
                fastcgi_pass  unix:/tmp/php-cgi-S1-1.sock;
                fastcgi_index index.php;
                include fcgi-host.conf;
                fastcgi_param DOCUMENT_ROOT  /web$subdomain;
                fastcgi_param SCRIPT_FILENAME  /web$subdomain$fastcgi_script_name;
        }
    	location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp3|wma)$
        {
                expires      30d;
        }
    
        location ~ .*\.(js|css)$
        {
                expires      12h;
        }
    
        access_log /home/wwwroot/S1-1/log/access.log combined; #access_log end
        error_log /home/wwwroot/S1-1/log/error.log crit; #error_log end
    

    }

    S1-2,Nginx 配置 server { listen 80; server_name 45.63..; #server_name end index index.html index.htm index.php; #index end

        set $subdomain '';
        root  /home/wwwroot/S1-2/web$subdomain;
        include rewrite/amh.conf; #rewrite end
    
        #error_page
        error_page 400 /ErrorPages/400.html;
        error_page 403 /ErrorPages/403.html;
        error_page 404 /ErrorPages/404.html;
        error_page 502 /ErrorPages/502.html;
        location ~ /ErrorPages/(400|401|403|404|405|502|503)\.html$
        {
                root /home/wwwroot/S1-2/web;
        }
    
    
        location ~ .*\.php$
        {
                fastcgi_pass  unix:/tmp/php-cgi-S1-2.sock;
                fastcgi_index index.php;
                include fcgi-host.conf;
                fastcgi_param DOCUMENT_ROOT  /web$subdomain;
                fastcgi_param SCRIPT_FILENAME  /web$subdomain$fastcgi_script_name;
        }
    	location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp3|wma)$
        {
                expires      30d;
        }
    
        location ~ .*\.(js|css)$
        {
                expires      12h;
        }
    
        access_log /home/wwwroot/S1-2/log/access.log combined; #access_log end
        error_log /home/wwwroot/S1-2/log/error.log crit; #error_log end
    

    }

    以上都是具体配置信息了,网查官方文档,看配置都是一样的,不知道为什么配置完成之后访问总是提示“ 400 Bad Request ”,另外反向代理是可以正常访问的,没有问题。只有配置负载均衡时才访问出错,求教各位大神为什么会这样。

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2808 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:54 · PVG 21:54 · LAX 05:54 · JFK 08:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.