Nginx 在 Windows 服务器的不同端口上运行,而 IIS 在端口 80 上运行

Nginx 在 Windows 服务器的不同端口上运行,而 IIS 在端口 80 上运行

我有一台 Windows 服务器,上面运行着 IIS,还有一大堆应用程序。对于其中一个应用程序,我们需要安装 Nginx 进行反向代理。我们必须从供应商处调用动态文件。由于 IIS 已经在端口 80 上,因此 Nginx 安装在不同的端口 8070 上。

nginx.conf 文件已更新,以反映不同的端口。以下是已更新文件的一部分:

server {

    listen      8070;
    server_name localhost;



    location / {
        root   html;
       index  index.html index.htm;
    }

    location /abc/{
    proxy_pass https://my.vendor.com/;
    proxy_set_header Host $host:$server_port;
    proxy_redirect http://localhost/ http://localhost:8070/;
    }

但是,当应用程序尝试访问供应商提供的动态文件时,URL 缺少端口 8070,并抛出 404 错误。我已经研究了 nginx.conf 文件好几天了,但仍然没有成功。对于生成的动态 URL,如果我添加端口 8070,则访问供应商提供的动态文件没有任何问题。

当前生成的 URL 模式用于访问供应商动态文件。它会抛出 404 错误: http://localhost/abc/VendorDyn.js?load=true&pp=true&mm=false&fptrue&hm=true&er=false

但是,端口号应该如下所示 http://localhost:8070/abc/VendorDyn.js?load=true&pp=true&mm=false&fptrue&hm=true&er=false

我在 nginx.conf 文件中是否缺少了将端口添加到 URL 的任何内容?

我还尝试在 conf 文件中对服务器使用以下内容:

 server {       
        listen      localhost:8070;

然而,这也无济于事。

任何帮助或评论都将不胜感激。我无法在端口 80 上使用 Nginx。我需要将其放在 80 以外的其他端口上。

谢谢。

相关内容