Windows server使用Nginx反向代理获取404

Windows server使用Nginx反向代理获取404,nginx,nginx-reverse-proxy,Nginx,Nginx Reverse Proxy,我有一个windows服务器,用于托管一个公文包网站和一些应用程序,该网站使用nginx在端口80和443上运行 我正试图让nginx反向代理我的一些应用程序,以帮助它们更加安全 按照所有指南,我的网站仍在运行,但应用程序仍然只能通过其指定的端口访问 SSL nginx当前看起来像: server { listen 192.168.0.2:443; server_name example.com 192.168.0.2; ssl_certificate

我有一个windows服务器,用于托管一个公文包网站和一些应用程序,该网站使用nginx在端口80和443上运行

我正试图让nginx反向代理我的一些应用程序,以帮助它们更加安全

按照所有指南,我的网站仍在运行,但应用程序仍然只能通过其指定的端口访问

SSL nginx当前看起来像:

 server {
    listen       192.168.0.2:443;
    server_name  example.com 192.168.0.2;

    ssl_certificate      cert.pem;
    ssl_certificate_key  key.key;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;

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

    location /app1/ {
        proxy_set_header Host 192.168.0.2:3882/;
        proxy_pass http://192.168.0.2:3882/app1;
    }

    location /app2 {
        proxy_pass http://127.0.0.1:3883;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

我尝试了两种不同的方法来尝试和查看应用程序,但两种方法都会产生404 not found,错误日志显示以下错误:

2019/09/10 22:21:08 [error] 11940#15356: *1 CreateFile() "C:\Users\Alex\Services\nginx-1.17.3/html/app1" failed (2: The system cannot find the file specified), client: 192.168.0.2, server: example.com, request: "GET /app1 HTTP/1.1", host: "192.168.0.2"
从这个错误中,我可以推断出nginx正在查看网站文件夹,而不是服务器中的应用程序,因为我没有看到对端口的引用

我假设错误就在附近的某个地方:

位置/app2{
代理通行证http://127.0.0.1:3883;


位置可能需要更多信息的地方

错误指定URI为
/app1
,它与
位置
块匹配。错误出现在服务器上但不在webiste位置的/app1和/app2上,因此从错误中我认为它试图查找的是网站文件夹,而不是服务器呃本身,我想一旦我通过类似location ^ ~/app1的方式退出,它会起作用,但这并不能修复错误,因为它仍然在网站文件夹中查找错误指定URI为
/app1
,它与
location/
块匹配。服务器上的/app1和/app2都存在错误,但是不在webiste的位置,因此从错误中我认为它试图在网站文件夹中查找,而不是服务器本身。我认为,一旦我通过类似location^~/app1的方式离开,它就会工作,但这无法修复错误,因为它仍在网站文件夹中查找