【问题标题】:nginx redirect (or proxy) to another app on localhostnginx 重定向(或代理)到本地主机上的另一个应用程序
【发布时间】:2016-11-24 21:19:34
【问题描述】:

我想使用 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(或重写?)

这些假设正确吗?

提前致谢!

【问题讨论】:

  • 不工作 - 不是问题描述

标签: nginx proxy


【解决方案1】:

我将其修复如下:

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   ~*^/.* /;

    }}

非常感谢

【讨论】:

    猜你喜欢
    • 2019-09-10
    • 1970-01-01
    • 2016-01-12
    • 1970-01-01
    • 1970-01-01
    • 2010-10-31
    • 2023-03-29
    • 2021-04-15
    • 1970-01-01
    相关资源
    最近更新 更多