当前位置:首页 > nginx

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

canca5年前 (2021-11-10)nginx1560
今天,配置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://www.iant.work/post/782.html

分享给朋友:

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

nginx if判断&&和||写法

今天在写nginx配置的时候需要用到if判断的&&,但是查了一下文档if并不支持&&的写法,现在将方法记录一下…

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配置重定向到参数中的url

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

nginx 详解

1、location [=|~|~*|^~] /uri/ { … }location  = / {   # 精确匹配 / ,主机名后面不能带任何字符串   [ configur…

发表评论

访客

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