如何使用nginx分隔子页面以指向不同的nodejs服务器

我在我的机器上运行了两个nodejs服务器,我希望mydomain.example.com/由除mydomain.example.com/exception之外的其中一台服务器提供服务。 我正在使用nginx并试图做到这一点,但没有奏效。 如何才能做到这一点?

 server { listen 80; server_name mydomain.example.com; return 301 https://$server_name$request_uri; } server { listen 443 default_server ssl; server_name mydomain.example.com; keepalive_timeout 70; ssl_certificate /etc/chained.crt; ssl_certificate_key /etc/key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; location / { proxy_pass http://localhost:8081; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } location /exception { proxy_pass http://localhost:9000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } 

编辑 :我的问题是, mydomain.example.com/exception的请求由服务器端口8081服务,而不是9000。

编辑2 :我误解了以前的编辑行为。 mydomain.example.com/exception由服务器在端口9000上服务,但我期望mydomain.example.com/exception是该服务器的根目录,但是没有。 我认为这个configuration将使mydomain.example.com/exception等效于mydomain.example.com:9000 ,但它使mydomain.example.com:9000/exception 。 所以更新后的问题是:我希望mydomain.example.com/exception的工作方式与通过指定端口9000访问服务器的方式完全相同。这怎么办?