IIS提供localhost URI而不是服务器名称

时间:2017-10-27 20:14:51

标签: iis

IIS7服务.Net Web应用程序(简单数据库站点)。

我有一个奇怪的问题,即元素的backgroundimage(URL)属性将作为" http:\ localhost"而不是" http:\ servername"。这是一个问题,因为当用户连接到我的网站时," localhost"将是他们的工作站,而不是IIS服务器。所以图像(在这种情况下是一个按钮)是空白的。

这个问题是间歇性的,回收应用程序池似乎解决了一段时间的问题然后又回来了。 IIS服务器还运行一个吃掉~28 / 36GB RAM的SQL实例。

有人见过这样的事吗?

1 个答案:

答案 0 :(得分:0)

为了解决此问题,您需要搜索" http:\ localhost"在您的网络应用程序中进行硬编码,并将其替换为动态路径。即使localhost可以在您的代码中工作,如果它是相对于服务器的,有时它也无法工作,例如在链接中。你应该养成从不硬编码网址的习惯。

如果您使用的是MVC -

value = Url.Content("~/Images/MyImage.png");

如果您使用的是表格 -

value = ResolveUrl("~/") + "Images/MyImage.png"

或相对路径 -

value = "~/Images/MyImage.png"