我有两个负载均衡的生产Web服务器,它们位于DMZ中。我有一个表单,需要根据某些标准打开另一个表单。其中一个服务器工作正常,并提供完整的权限名称,即“host.n.n.com”。另一个prod服务器只返回“host”,因此无法找到该页面。这是我正在使用的代码:
urlString.Append(url.Scheme);
urlString.Append("://");
urlString.Append(url.Authority);
urlString.Append("/somedir/anotherdir/");
urlString.Append(formName + ".aspx");
服务器1(正常工作)返回http://host.n.n.com/somedir/anotherdir/formName.aspx 服务器2(破产)以http://host/somedir/anotherdir/formName.aspx
返回IIS似乎在两台服务器上都是相同的。
提前感谢您提供任何帮助
答案 0 :(得分:2)
Authority属性来自请求本身。
如果来自用户的请求来自'host.n.n.com'或'host',那么该属性将反映出来。您可以使用http://localhost/yoursite/page.aspx vs http://yourcomputername/yoursite/page.aspx在本地对此进行测试。同一页面将分别返回'localhost`和'yourcomputername'。
为什么不将URL设置为配置?