当前位置:首页 > nginx > 正文内容

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

canca4年前 (2021-11-10)nginx1409
今天,配置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的一些优化(突破十万并发)

【nginx】关于Nginx的一些优化(突破十万并发)

nginx指令中的优化(配置文件)worker_processes 8;  nginx进程数,建议按照cpu数目来指定,一般为它的倍数。worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000...

nginx变量

nginx变量

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

nginx if判断&&和||写法

今天在写nginx配置的时候需要用到if判断的&&,但是查了一下文档if并不支持&&的写法,现在将方法记录一下①nginx if判断&&(并且)写法,即:采用变量叠加的方法实现set $allowphp ''; i...

Nginx 之 ip_hash 问题

起因公司项目上用到了Asp.Net Core SignalR,由于SignalR需要长链接,所以在进行水平扩展的时,不仅需要Redis做底板,还需要将同一个链接的请求打到同一台机器上;作为一个资深面相百度编程的Coder,第一个想到的当然是nginx的ip_hash了,毕竟在session横行的年代...

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

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

发表评论

访客

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