NGINX 代理传递保留错误的重定向端口

NGINX 代理传递保留错误的重定向端口

首先,我要为发布此帖道歉。我已经在搜索这个问题了,尝试了各种方法,但仍然没有得到答案。请不要生我的气。

好的,这是我的单个配置文件:

upstream app-backend {
        server 172.23.2.143:9080 weight=1 max_fails=2 fail_timeout=10s;
        server 172.23.2.144:9080 weight=1 max_fails=2 fail_timeout=10s;
}

server {
    listen 12001 ssl;
    server_name test.abc.com;
    error_page  497 https://test.abc.com:12001$request_uri;
    include /usr/local/openresty/nginx/conf/tls/ssl.conf;


    location / {
        proxy_pass http://app-backend;
        proxy_set_header Host $host;
      }
}

所以问题是,当我访问我的主域并进行一些登录(POST)时: https://test.abc.com:12001/login.jsp它将重定向到具有相同路径的上游之一,

它告诉我http://test.abc.com:9080/home.detail这个网站不存在,然后我在浏览器上收到消息this site cannot be reached

问题是,为什么这个重定向到属于后端端口的端口 9080。我不知道该怎么办了。我真的需要帮助和指导。请

答案1

我正在用这种配置解决上述情况。

proxy_cache_path /tmp/NGINX_cache/ keys_zone=backcache:10m;

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}


upstream app-backend {
       ip_hash;
       server 172.22.8.143:9080 weight=1 max_fails=2 fail_timeout=10s;
       server 172.22.8.144:9080 weight=1 max_fails=2 fail_timeout=10s;
}

server {
    listen 9080 ssl;
    server_name test.abc.com;
    error_page  497 https://test.abc.com:9080$request_uri;
    include /usr/local/openresty/nginx/conf/tls/ssl.conf;


    location / {
        proxy_pass http://app-backend;
        proxy_set_header   Host  $http_host;
        proxy_cache backcache;
      }

}

相关内容