使用部分限定名称时,网站返回500错误

我正在build立一个内部网站来托pipe一个networking服务。

该网站有DNS入口service.test.company.local 。 该公司使用company.local作为其内部应用程序的DNS区域,并且该条目在所有DNS请求上都默认为后缀。

因此, service.test的查找parsing为全名和正确的IP地址。

IIS 6站点configuration为在IP地址service.testparsing为端口80上侦听。

尝试通过service.test.company.local访问此站点时,地址parsing并且服务正确显示。

当试图通过service.test访问这个网站时,会显示一个IIS错误页面,报告500 – 内部服务器错误。

在网站的日志文件或应用程序事件日志中没有为此请求生成条目。

我无法理解这个错误是从哪里来的,而且IIS给我的信息不足令人感到沮丧。

任何想法的问题或解决scheme? 我可以检查的任何其他信息来源?

编辑:

来自IIS的不友好的错误是:

未知主机


说明:无法find名为“service.test”的服务器—服务器没有DNS条目。 也许在服务器名称中存在拼写错误,或者服务器不再存在。 仔细检查名称,然后重试。


编辑:2

我怀疑这与组织设置DNS条目的方式有关。 我可以添加其他前缀条目到我的主机文件,并在本地获得正确的parsing到网站。

我认为这个问题需要DNS大师来提出潜在的问题。 不幸的是,我没有对DNS条目的权限,所以我期待着很多痛苦。

在得到我的操作团队的参与之后,答案就是代理服务器试图处理请求,而不是绕过本地networking。

返回的错误信息来自代理服务器,而不是IIS服务器。 当操作小组的成员注意到HTTP请求没有像他们期望的那样发送代理绕过信息时,这个信息就被偶然发现了。

代理绕过规则包括*.company.local ,其function是针对没有任何其他后缀的地址,并为完全限定的名称提供旁路,但在使用其他后缀(例如.test时似乎不适用。

由此,我们决定解决这个问题太麻烦了,我们将使用完全合格的名称作为“足够好”的解决方法。

编程英雄,

您是否在特定网站上为service.test设置了Site hostheader。 由于1个IP地址支持多个站点,因此IIS使用主机头来区分80端口托pipe。

如果您点击您的网站的属性,然后高级,添加在主机头,并把空白,service.test,如果DNS是解决的IP等…只要确保你有一个正确的默认页面的文件和它应该加载..

尝试一个世界你好,看看是否会加载的HTML ..

REGD

编程英雄,

好点的CodingGorilla,错误不是一个会find一个hostheader问题。 内部错误似乎指向别的东西..

你可以看看网站的应用程序池,你是否使用networking服务作为身份? 是否http:// localhost加载或给你找不到错误文件? 你可能只是尝试创build一个新的站点,并尝试使用该站点,如果本地主机加载了一个HTM文件,它可能是元数据库中与该特定站点closures的东西。

Regds

我不认为,根据你的编辑,你打到你的IIS服务器。 正如你所提到的请求从来没有出现在IIS日志中,而这种错误似乎并不像IIS会给你的错误。

尝试编辑您的主机文件(c:\ windows \ system32 \ drivers \ etc \ host)并添加以下条目:

 service.test 127.0.0.1 

这应该确保service.test请求到你的IIS服务器(假设你从IIS服务器本身点击,如你在评论中提到的那样)。

如果这有效,那么问题可能与在服务器上configuration名称parsing的方式有关。 也就是说,“company.local”域不在DNSsearch后缀列表中。