nginx如何自动添加域名端口?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx如何自动添加域名端口?相关的知识,希望对你有一定的参考价值。

使用https协议用nginx做反向代理,nginx.conf配置如下
server
listen 80;
server_name xxxxxxxxx.cn;
rewrite ^(.*) https://$server_name$1 permanent;


server
listen 443 ssl;
server_name xxxxxxxxx.cn;
ssl_certificate /usr/share/nginx/html/cert/3705965__sasu.edu.cn.pem;
ssl_certificate_key /usr/share/nginx/html/cert/3705965__sasu.edu.cn.key;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_session_timeout 5m;

location /
# proxy_redirect off;
# proxy_set_header Host $host;
# proxy_set_header X-Real-IP $remote_addr;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https://127.94.231.40:6830;


使用反向代理域名访问https://xxxxxxxxx.cn:443 会自动跳转到页面https://xxxxxxxxx.cn/welcome/;
使用被代理域名https://127.94.231.40:6830访问,会自动跳转到页面https://127.94.231.40:6830/welcome/;这个和所需要的地址https://xxxxxxxxx.cn:443/welcome/是同一个页面。
可以看出在使用nginx反向代理访问后,域名后面没有自动带出443端口。麻烦看下配置哪里有问题。

参考技术A 首先安装时候nginx要带上这个模块,./configure --prefix=/usr/local/nginx --with-stream
在nginx.conf里面配置上类似以下配置文件:
stream

upstream dack
server 127.0.0.1:9092;
server 127.0.0.1:9093;
server 127.0.0.1:9094;


server
listen 9091;
proxy_pass dack;



注意:stream级别和http同级。

以上是关于nginx如何自动添加域名端口?的主要内容,如果未能解决你的问题,请参考以下文章

nginx 80端口反向代理多个域名,怎样隐藏端口的

nginx 80端口反向代理多个域名,怎样隐藏端口的

Nginx如何配置多个服务域名解析共用80端口详解

使用Nginx(OpenResty)转发域名到非80端口

如何配置nginx屏蔽恶意域名解析指向《包含隐藏nginx版本号》

nginx如何一个域名多个端口?