1.背景
因部署需要将项目用nginx进行二次转发访问,配置过程中出现各种报错,现将记录如下
Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as....
2.nginx配置如下
upstream wuhan1 {
#server 192.168.1.111:9071 weight=1;
server 192.168.1.145:9022 weight=2;
}
upstream wuhan2 {
server 192.168.1.111:9071 weight=1;
}
upstream wuhan3 {
server 192.168.1.145:9071 weight=1;
}
server {
listen 8011;
server_name 0.0.0.0;
location / {
proxy_pass http://wuhan1;
proxy_read_timeout 1800;
}
location /tr2 {
proxy_pass http://wuhan2;
proxy_read_timeout 1800;
}
location /tr3 {
proxy_pass http://wuhan3;
}
}
3.报错如下:
3.1 使用localhost访问如下
http://wuhan1的访问正常,二级目录下/tr1/访问报错如下:
3.2解决办法
nginx代理的网址要和代理名的配置一样,如果代理名后面加“/”,则代理的网址最后也要加“/”
具体配置:
upstream wuhan1 {
#server 192.168.1.111:9071 weight=1;
server 192.168.1.145:9022 weight=2;
}
upstream wuhan2 {
server 192.168.1.111:9071 weight=1;
}
upstream wuhan3 {
server 192.168.1.145:9071 weight=1;
}
server {
listen 8011;
server_name 0.0.0.0;
location / {
proxy_pass http://wuhan1;
proxy_read_timeout 1800;
}
location /tr2/ {
proxy_pass http://wuhan2/;
proxy_read_timeout 1800;
}
location /tr3/ {
proxy_pass http://wuhan3/;
}
}
3.3 其他错误
nginx 发布服务,页面请求后台后,大于1分钟返回,浏览器报1分钟超时 504 Gateway Time-out错误
nginx代理的网址下面增加:proxy_read_timeout 1800;即可,如果修改不生效,将该nginx换其他机器好使,那就说明修改后未重启成功,可以尝试关闭所有nginx进程,再重启,或者直接重启电脑,如上红色代码片段。
4.Nginx深入详解之upstream分配方式