0

我有一个带有 IIS6 的 Windows Server 2003 服务器。我有一个运行良好的主站点。我正在尝试为该主站点下的文件夹创建备用 URL。我现在正在尝试设置主机标头(我已经做过很多次了)并且得到了意想不到的结果:403 Forbidden。

细节:

  • 浏览 www.mysite.com/folder 工作正常。
  • 我有一个指向同一服务器(相同 IP)的 DNS 条目说:folder.domain.com
  • 我在主站点上输入了 folder.domain.com 作为主机头。
  • 我希望 folder.domain.com/folder 可以工作,就像 www.mysite.com/folder 一样。--(我认为将来我需要重写一些 url,以摆脱对 /folder 的需求。)

无论如何,在尝试使用该主机标头 URL 时,我总是会收到 403 禁止。403 只是 403...不是 .1、.2 或任何东西。

我检查并排除了一些事情:

  • 缺少默认文档:它已设置且正确,如果我尝试获取 folder.domain.com/folder/index.html,我会得到同样的结果。(作为 www.mysite.com/folder/index.html 工作)

  • 文件/文件夹权限:我没有得到 401,它适用于 www.mysite.com,它设置为允许匿名,并且 IUSR... 分配正确(我认为)。

  • 配置文件:它是基本的 html,所以没有 web.config 可以检查/编辑。(我确实看到了一个 index.php。我不知道 php,所以不确定这是否可能涉及,但我只是想访问 index.html 文件。)

  • 劫持连接:为了验证没有其他任何东西拦截了我以新名称与该服务器的连接,我使用 telnet 连接到 folder.domain.com,然后提交了对 www.mysite.com/folder 的 HTTP GET 请求。它工作得很好。所以我连接到同一台服务器。

另外两个奇怪的事情:

  • IIS 日志根本没有记录 403 错误。

  • 我请求了一个我知道不存在的页面... folder.domain.com/folder/nothere.html。我仍然得到了 403 禁止,在日志中我找到了那个条目,它有一个 200 状态码!如果我对 www.mysite.com/folder/nothere.html 尝试相同的请求,我会得到预期的 404 未找到。

更复杂的是,我只能通过网络与中国的一个人访问机器,而我在美国......所以我必须收集我得到的任何想法/评论/建议并尝试所有这些如果我没有立即回复结果,请耐心等待。谢谢!

4

1 回答 1

0

我最终发现,一个我不认识的名为 IBsys.dll 的 ISAPI 过滤器实际上是中国生产的服务器安全软件的一部分。

该软件正在过滤所有请求并阻止它不知道的请求。该软件必须使用新的主机标头进行配置。

因此,如果您遇到类似情况,请仔细检查您的 ISAPI 过滤器。

于 2013-02-22T19:23:13.560 回答