繁体   English   中英

nginx重定向(或代理)到本地主机上的另一个应用程序

[英]nginx redirect (or proxy) to another app on localhost

我想使用nginx将请求从7443重定向(或代理)到8443。

https://serverIP:7443/oldApp/  ==> https://serverIP:8443/new/app/

我尝试了一些设置,但仍然显示404或空白页。

这是我的Nginx配置:

//ssl settings ..

server {
     listen [::]:7443 ipv6only=off ssl;
     server_name  localhost;
     location /oldApp/ {    
          proxy_set_header  Accept-Encoding        "";
          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_set_header  X-Forwarded-Proto       $scheme;
          #proxy_set_header X-Forwarded-Port       8443;
          #add_header       Front-End-Https        on;

          proxy_pass      https://127.0.0.1:8443/new/app;
     }}

以下是一些可能对指令用法有用的假设:

  1. 对于不同的端口/方案=>使用proxy_pass(或proxy_redirect)

  2. 对于不同的虚拟主机/子域/文件夹=>使用sub_filter(或重写?)

这些假设正确吗?

提前致谢!

我固定如下:

server {
    listen [::]:7443 ipv6only=off ssl;
    server_name  localhost;

    location ^~ /oldApp {
        proxy_pass https://127.0.0.1:8443/new/app/;

        # Here is the trick: add the port behind $host
        proxy_set_header    Host            $host:8443;

        # This make sure your session won't lose  
        proxy_cookie_path   ~*^/.* /;

    }}

非常感谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM