技术解析
有一个 SOAP 的 WebService 服务部署在 IIS 上,是基于.net 开发的,使用的端口是 8026, 然后使用 nginx 反向代理到外网,想使用 80 端口,配置如下:
server {
listen 80;
server_name tt.aaa.com;
location / {
proxy_pass http://10.11.21.123:8026;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}
访问都正常,但很奇怪的一点是,Visual Studio 引用这个地址的时候,就会将信息跳转到了"大带宽服务器tt.aaa.com"的 8026 端口上,同时如果把远程调试打开,发现 Post 完信息后,都是跳转至 tt.aaa.com:8026 的端口了。我知道获取 host 地址可以使用$host,是否还有其他方式可以设置 port 的端口? 试过$port 也是一样的问题。
有遇到这种问题的,还麻烦给一个思路,在此先谢过。