Nginx proxy_pass规则不适用于我的角度应用程序

Nginx proxy_pass规则不适用于我的角度应用程序,nginx,nginx-reverse-proxy,proxypass,Nginx,Nginx Reverse Proxy,Proxypass,以下是在my Nginx服务器中创建的用于指向两个应用程序的代理传递规则。代理规则适用于默认URL,但我无法指向在端口2000中运行的应用程序。 请帮我找出根本原因。这是因为URL中存在#吗 server { listen 80 default_server; listen [::]:80 default_server; location /#/login { proxy_pass http://3.81.197.217:2000; }

以下是在my Nginx服务器中创建的用于指向两个应用程序的代理传递规则。代理规则适用于默认URL,但我无法指向在端口2000中运行的应用程序。 请帮我找出根本原因。这是因为URL中存在#吗

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    location /#/login {
        proxy_pass http://3.81.197.217:2000;
    }
    location / {
        proxy_pass http://3.81.197.217;
    }
}
更多细节
  • angular应用程序是否在端口2000中运行
  • 是另一个在同一个框中的端口80中运行的应用程序

  • 这两个应用程序都是使用Angular构建的,并且在URL中有#

    我认为最好的方法是使用不同的子域,因为这两个应用程序都有许多路由,所以您的解决方案会产生许多冲突

    /
    中的问题。试试这个配置,它会工作的

    server {
        listen 80 default_server;
        listen [::]:80 default_server;
    
        location /#/login/ {
            proxy_pass http://3.81.197.217:2000/;
        }
        location / {
            proxy_pass http://3.81.197.217/;
        }
    }
    

    非常感谢您的快速回复。这种配置也适用于我们。位置/#/login/给了我们404。我看你不能在路线上使用。看看这个答案。