当前位置:首页 > nginx

nginx 反向代理时丢失端口的解决方案,443端口变80

canca4年前 (2021-11-10)nginx1480
今天,配置nginx反向代理时遇到一个问题,当设置nginx监听80端口时转发请求没有问题。但一旦设置为监听其他端口,就一直跳转不正常;如,访问欢迎页面时应该是重定向到登录页面,在这个重定向的过程中端口丢失了。
    这里给出一个简短的解决方案,修改nginx的配置文件。

一、配置文件

 # the 90 port

 server {
     listen       90; 
     server_name  baidu.com;
     proxy_set_header X-Forwarded-Host $host;
     proxy_set_header X-Forwarded-Server $host;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     proxy_set_header Host $host:$server_port; #这里是重点,这样配置才不会丢失端口

     location / {
        proxy_pass http://127.0.0.1:9001;
     }

     location = /50x.html {
         root   html;
     }
 }

二、产生原因

        nginx没有正确的把端口信息传送到后端,没能正确的配置nginx,下面这行是关键
                proxy_set_header Host $host:$server_port; 这一行是关键。


扫描二维码推送至手机访问。

版权声明:本文由Ant.Master's Blog发布,如需转载请注明出处。

本文链接:https://iant.work/post/782.html

分享给朋友:

“nginx 反向代理时丢失端口的解决方案,443端口变80” 的相关文章

nginx变量

nginx变量

与request有关的变量1,$arg_name请求行中,名称为name的参数的值。比如,当请求行是"GET /nginx/varindex/?from=rss HTTP/1.1"时,arg_name的值是空字符串…

Nginx 获取自定义请求header头和URL参数

一、获取 header 请求头在 ngx_lua 中访问 Nginx 内置变量 ngx.var.http_HEADER 即可获得请求头HEADER的内容。在 nginx配置中,通过$http_HEADER 即可获得请求头HEADER的内容。案例:$.ajax({ ....... headers:…

详解nginx的root与alias

详解nginx的root与alias

nginx版本: 1.18.0…

会话丢失-NGINX配置之underscores_in_headers

1.描述 问题 NGINX代理某个web服务时,单机情况下也出现不停的要求认证的情况 初步分析…

nginx配置重定向到参数中的url

在配置nginx使其能达成这样一个条件,访问http://localhost:8080/test?url=https://www.baidu.com,跳转到url中的网址,即https://www.baidu.com配置location ~/test {   …

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。