单个服务器共享我们的主网站(由 Apache 托管)和 Exchange OWA 站点(由 IIS 托管)。
这些站点有 2 个不同的公共 IP,它们有 2 个不同的 URL。但是,IIS 坚持抓取分配给服务器的所有静态 IP。
我做了一些研究,发现了这个链接:http: //support.microsoft.com/kb/892847
我在 IIS 6.0 上。我继续禁用套接字池,然后重新启动。使用 httpcfg 将 IIS 分配给 2 个内部 IP(xxx11:80、xxx11:443),现在 IIS 站点就像端口正在使用一样,即使 Apache 也关闭了。我仔细检查了 apache 配置,并在必要时指定了 .12 IP。
我去查看了我的 ListenOnlyList,它看起来是正确的。它有 2 个条目和正确的端口。
为了踢球,我重新打开了套接字池,一切正常。当我打开和关闭 IIS 时,我可以使用 Active Ports 程序并看到 0.0.0.0:80 进出使用。
关闭套接字池,事情又变糟了。
似乎 IIS 完全忽略了 ListenOnlyList。除非我将 ListenOnlyList 更改为 0.0.0.0,否则 IIS 会平稳地嗡嗡作响。我仔细检查了 IIS 并确保 IP 匹配 - 他们确实如此。它不在 All Unassigned 上,实际上在 xxx11 上。疯狂的。
有任何想法吗?
您是否确保在 IIS 的网站属性中仅选择 IIS 服务器的 IP 地址?您可能选择了“(所有未分配)”。我不确定这是否会解决您的问题,但值得检查。
专门禁用套接字池在 IIS6 上不起作用。相反,您必须更改提到的注册表项,然后执行 httpcfg 操作。
假设您更改了注册表项,运行 httpcfg query iplisten 的输出是什么?
我写了一篇博文,详细介绍了您在 httpcfg 中使用的步骤:
http://www.diaryofaninja.com/blog/2012/06/21/forget-what-your-mother-told-you-iis-and-apache-can-be-friends
基本上: