我正在尝试使用 nginx 设置代理服务器。该服务器运行 Windows Server 2003 并运行 IIS 和 tomcat。我试图实现的是将来自 sma.local.com:80 的调用重定向到位于 servername.domain.com:8080/orderpad 的内部服务器。
这是我第一次处理 nginx,我有点沮丧。NGINX 配置
server {
listen 80;
server_name sma.local.com;
access_log logs/host.access.log main;
location / {
proxy_pass sservername.domain.com:8080/orderpad;
#proxy_set_header Host servername.domain.com:8080/orderpad;
#proxy_set_header X-Host servername.domain.com:8080/orderpad;
#proxy_set_header X-Real-IP $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
当我尝试访问 sma.local.com 地址时出现 404 错误。
答案1
您可以像这样重定向到上游服务器:
http {
上游我的服务器 {
sservername.domain.com:8080;
}
服务器{
监听80;
服务器名称sma.local.com;
access_log 日志/host.access.log 主要;
位置 / {
代理密码http://我的服务器/orderpad;
}
答案2
您的代理通行证中不需要有完整的“http://...”URI 吗?
例子: Nginx 负载均衡示例
编辑:哦,如果您想要诸如 /orderpad/testthing 之类的 URI,那么您需要在末尾加上斜杠“/”,否则它最终会变成 /orderpadtestthing