2012-06-01 126 views
4

相同的服务器,相同的网站 - 两个不同的结果。为什么Request.ServerVariables [“HTTP_HOST”]与Request.Url.Host不同?

案例1

请求URL:domain.com(解析为domain.com/default.aspx)萤火虫
请求头:domain.com
Request.ServerVariables["HTTP_HOST"] = domain.com
Request.Url.Host =域。 COM(好吧,这是很好的和预期的)

案例2

请求URL:domain.com/default.aspx
在Firebug的请求头:domain.com
Request.ServerVariables["HTTP_HOST"] = domain.com
Request.Url.Host = APP5(服务器名)

看着两个请求我看不到任何会造成这一点。为什么会这样呢?
服务器运行Windows 2003和IIS6。

+0

这是否发生在服务器上的其他网站上?我无法在我的IIS 7/2008盒子上重新创建它。 – Josh

+0

@Josh这是我们在该服务器上唯一的常规ASP.NET网站。我将在周一尝试创建一个新的空白网站(不能从家中访问该可乐)。 –

回答

2

你应该检查IIS元数据库中是否设置为使用主机名或一个不同的名称

命令 - >cscript adsutil.vbs get W3SVC/SITE-ID/USEHOSTNAME

结果 - >应该是

The parameter "USEHOSTNAME" is not set at this node.

USEHOSTNAME : (BOOLEAN) False指令 - >cscript adsutil.vbs get W3SVC/SITE-ID/SETHOSTNAME

结果 - >应是

The parameter "SETHOSTNAME" is not set at this node.

SETHOSTNAME : (STRING) ""

变化SITE-ID与站点的数字ID。

如果您看到任何其他结果表示有人已修改网站的上述两个属性。

+1

哦哇,这是一段时间以前...我甚至不再为该公司工作,但谢谢你的努力:) –

相关问题