做负载均衡访问网页时报错:
HTTP Status 400 – 错误的请求
故障原因
根据浏览器报错的提示消息,意思为:在一个域名中使用字符“_”是不正确的;
原来问题出在了nginx主配置文件中给后端tomcat服务器池起的名字上,不支持下划线
upstream crm_mycomm {
server 172.16.60.32:8000 weight=4;
server 172.16.60.31:8000 weight=6;
}
解决方法
将下划线去掉,再重新启动nginx服务就没问题了。
upstream crmmycomm {
server 172.16.60.32:8000 weight=4;
server 172.16.60.31:8000 weight=6;
}
location / {
root html;
index index.html index.htm;
proxy_pass http://crmmycomm ;
我tomcat7.0.70版本还支持下划线 ,升级到apache-tomcat-8.5.37 下划线就不能用了
所以,服务器池起名的时候就避免下划线吧