【问题标题】:How to Configure Nginx reverse proxy for 2 apps running on the same machin on different ports如何为在不同端口上同一台机器上运行的 2 个应用程序配置 Nginx 反向代理
【发布时间】:2021-01-19 01:08:36
【问题描述】:

在我的 aws ubuntu (18.04) 机器上,我有 2 个应用程序在 2 个端口上运行

(1) 我有一个 .net core 3.1 angular spa,身份服务器 4 在 5000 上运行,我使用以下步骤进行设置

nginx 只是一个反向代理

(2) 我有一个 Angular ssr 应用程序在端口 4000 上运行。

我想要实现的是反向代理将社交媒体机器人代理到端口 4000,而所有其他请求都代理到 5000。

目前 nginx 只代理到 .net core 应用的 5000 端口

【问题讨论】:

    标签: nginx reverse-proxy


    【解决方案1】:

    您可以使用“location and proxy_pass”来访问您想要的在不同端口上运行的应用程序。

    如果您在同一个虚拟机上拥有所有东西,只需使用 localhost 插入的 ip 地址,我把它写下来了。
    但是,如果应用程序在另一个 vm 上运行,请使用它的 IP 地址,在我的配置中,目标服务器是:172.16.0.100

    您可以编辑主机文件并使用“example.com”或其他任何内容来指向您的站点并在您的 nginx 配置文件中使用,而不是 IP 或 localhost。

    sudo vi /etc/hosts
    172.16.0.100    example.com
    

    并将您想要的 FQDN 添加到目标主机,或者如果您有 dns,请添加一条可在整个本地网络中使用的 AAAA 记录。

    我在我的 nginx 服务器中编写了这个配置,它就像一个魅力。 无论如何,您可以根据自己的环境编写和编辑此配置。

    server {
    {
        listen 80;
        server_name 172.16.0.100;
    
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $remote_addr;
    
        location /angular {
            proxy_pass http://172.16.0.100:5000;
        }
        location /ssr {
            proxy_pass http://172.16.0.100:4000;
        }
    }

    【讨论】:

      猜你喜欢
      • 2022-01-07
      • 2017-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-02
      • 2013-10-06
      相关资源
      最近更新 更多