nginx 其他端口代理到80端口

 server {
        listen       80;
        server_name  www.baidu.com;

        location / {

            proxy_pass   http://139.196.187.111:8080;
        }
}

server下的结点:

listen:监听80端口

server_name:转发到哪个地址

proxy_pass:代理到哪个地址

上面会导致登录session失效的问题

        listen       80;
        server_name   www.baidu.com;
location /q.php {

            proxy_pass   http://139.196.187.111;
        }
        location / {

            proxy_pass   http:// www.baidu.com:8080/;
       proxy_redirect  off;     
            proxy_set_header        Host    $http_host;     
            proxy_set_header        X-Real-IP       $remote_addr;     
            proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;     
            proxy_set_header   Cookie $http_cookie;  
            chunked_transfer_encoding       off;   
        }
}

这样配置测试有效 第一个上转到php的一个地址可以忽略 第二个是转到java的地址

nginx常用命令(要进入到nginx的目录):

开启:start nginx

重启:nginx -s reload

发布了53 篇原创文章 · 获赞 0 · 访问量 3万+
展开阅读全文

Nginx能否监听443端口进行8089端口的反向代理

04-03

在开发微信小程序时,微信官方需要全局使用443端口。 在小程序中我们使用了emqtt服务,然后我们的后台跑在iis上。 iis上的项目端口号用的8089,emqtt服务的端口是8083. 我们想要使用Nginx监听443端口, 当监听到访问443端口并且为/mqtt时Nginx代理为8083端口。 当监听到/app时代理为8089端口。 可是我在写完/app后,Nginx仅仅只是帮我做了转发,网页提示网页并不能提供 安全链接。 加上了#proxy_set_header Host $host; 后 网页提示重定向次数过多。 以下是Nginx 的配置 ``` #user nobody; worker_processes 1; error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http{ include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 443 ssl; server_name www.brhein.cn; #配置ssl证书 ssl on; ssl_certificate Nginx_SSL/1_www.brhein.cn_bundle.crt; ssl_certificate_key Nginx_SSL/2_www.brhein.cn.key; #设置编码格式 #charset utf-8; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #服务端要支持 协议配置 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置 ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ############################################################ # 将Https的转发到IIS上面的8089端口 # IIS # listen : www.domain.cn:443/app # redirect : www.domain.cn:8089/app ############################################################ # 监听app location /app/ { proxy_pass http://www.domain.cn:8089; #proxy_set_header Host $host; } ############################################################ # emqtt的wss使用的是8084端口,则监听443端口的\mqtt 检测到就转到8084端口 # mqtt # listen : www.domain.cn:443/app # redirect : www.domain.cn:8089/app ############################################################ # 监听mqtt location /mqtt { proxy_pass http://www.domain.cn:8083; #proxy_set_header Sec-WebSocket-Protocol mqtt; #more_clear_headers Sec-WebSocket-Protocol; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; #proxy_set_header Host $host; } } } ``` 问答

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览