我正在尝试将nginx设置为对IIS上运行的站点进行HTTP身份验证的反向代理。我已经修改了http.sys
绑定以及IIS站点绑定,以便nginx可以成功侦听端口80。
当我从服务器访问http:// 127.0.0.1时,将按预期方式显示nginx HTTP身份验证对话框,如果我提供了凭据,则它将按预期方式代理到我的IIS应用程序。如果我访问http:// localhost:8080,我将得到预期的IIS应用程序。
但是,尝试从另一台计算机访问该站点失败。我已经尝试过完全禁用防火墙,但这也无济于事。这是我的nginx配置:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 0.0.0.0:80;
server_name localhost;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080/;
auth_basic "closed site";
auth_basic_user_file htpasswd;
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
*:81
,但可以到达那儿,但不行*:80
。