我有多个 IIS7 网站挂在 1 个 IP 上,使用不同的端口。
这三个网站都使用Z.A.B.C:XX
,XX
其中{100, 200, 300}
*
没有 web.config 设置不会导致 :300 不起作用,绑定设置正确。我甚至可以更改端口,使 200 变成 300,但原来的 300 仍然不起作用。它们都按 IP 显示,所以不是 DNS。它们之间没有 SSL 设置差异。我在 metabase.xml 中看不到任何会导致一个行为与另一个行为不同的内容。
IIS7 中是否存在我可能找不到的可以解决该问题的其他设置?
* not the real values.
更新:
无论使用哪个端口,托管的网站总是返回 500 个错误。这几天一直有效,想尝试从备份中回滚网站,看看是否与此有关。因为我确信这与 IIS 设置无关。
答案1
您是否排除了网站本身存在问题的可能性?我的意思是,如果这个应用程序在 xxx:300 上运行,请将其监听端口更改为 200 或任何其他端口,然后重试。这将允许您测试它是否实际上是端口 300 或网站本身存在问题。
另外,另一个程序可能正在使用端口 300,因此您无法将其分配给您的网站。尝试以下操作来查找哪个程序正在使用端口 300:
打开命令提示符并输入:netstat -ano | find“300”
netstat -ano 列出所有正在使用的端口。在末尾添加 find 可过滤它以仅显示包含 300 的结果。您正在寻找一行,上面写着 0.0.0.0:300 或 yourIP:300。此行最右边将有一个数字,这是使用此端口的进程 ID(程序)。打开任务管理器,转到查看 > 选择列。勾选“PID(进程 ID)”框。勾选该框,现在单击进程选项卡并在 PID 列中找到该 ID。这将告诉您哪个程序正在使用该端口。
在此处查看您的 500 错误代码http://support.microsoft.com/kb/943891。有什么看起来很熟悉吗?