400 Bad Request负载均衡器,用于Apache服务器和NGINX

wd2eg0qa  于 2023-10-17  发布在  Nginx
关注(0)|答案(2)|浏览(119)

我使用NGINX作为Apache WebServer(WordPress)的负载均衡器。所有服务器都使用AWS EC2。我的Nginx配置:

cat /etc/nginx/sites-available/default


upstream web_backend {
        server 35.157.101.5;
        server 35.156.213.23;
}

server {
        listen 80;
        location / {
                proxy_pass http://web_backend;
        }
}

但是在NGINX重启后,我通过公共IP访问负载均衡器,并得到一个错误:
Bad Request
您的浏览器发送了此服务器无法理解的请求。
此外,尝试使用ErrorDocument处理请求时遇到400 Bad Request错误。
47466服务器类型Apache/2.4.29(Ubuntu)
如果我刷新页面,我会得到同样的错误,但最终会有另一个IP(第二个服务器的私有IP),所以我明白NGINX做了这项工作,这是Apache的问题。我试着在nginx配置中为我的服务器添加80端口,用dns和private ip替换ips,但没有帮助。Apache上的访问日志没有显示任何有用的信息,只有400个错误。会有什么问题呢?

pgccezyw

pgccezyw1#

只需检查哪些端口正在运行Apache WebServer。你必须把这些添加到你的上游。
例如:

upstream web_backend {
        server 35.157.101.5:8080; //assuming that your apache webserver is running on this port on this host
        server 35.156.213.23:3000;//And a different port on the other.. you still need to add them here if your ports are same
}
hsgswve4

hsgswve42#

不要使用'_'作为上游名称,这是我的问题的唯一原因。

相关问题