IIS 管理器错误 - 无法绑定到 [::]:80.The 进程的基础传输无法访问该文件,因为

IIS Manager Error - Unable to bind to the underlying transport for [::]:80.The process cannot access the file because

我知道这个问题已在多个论坛中提出,并且有多个版本的答案。不幸的是,none 这些答案帮助我解决了我的问题。

我建立了 Windows Server 2016 的 AWS EC2 实例并安装了 IIS、MSMQ、Windows Process Activation Service 和其他一些东西。当我打开 IIS 管理器时,我注意到"Default Web Site" 已停止,当我尝试启动它时出现错误“进程无法访问该文件,因为它正被另一个进程使用(来自 HRESULT:0x80070020 的异常)”。尝试深入挖掘并在我的事件查看器中发现了这两个异常:

无法绑定到 [::]:80 的基础 t运行sport。 IP Listen-Only 列表可能包含对本机上可能不存在的接口的引用。数据字段包含错误编号。

万维网发布服务(WWW服务)没有为网站1注册URL前缀http://:80/SmsHandler。该网站有被禁用。数据字段包含错误编号。*

我在网上搜索了更多关于这个问题的文章,其中超过 95% 的文章说可能与 IIS 冲突并使用端口 80 和 443 的潜在应用程序可能是 Skype。但我不我的服务器上没有安装 SKYPE..

我 运行 "netstat -aon" 命令并发现:

C:\Windows\system32>netstat -aon |查找字符串:80

TCP 169.254.170.2:80 0.0.0.0:0 监听 1164

按照其他在线文章中提到的内容进行操作。我试图在我的任务管理器中追踪 PID - 1164,发现它的 "Service Host - Local System" 进程有 15 个系统服务 运行 进入它..我无法终止该进程以使我的 IIS 工作..

然后我尝试更改 IIS 中的绑定以侦听与 80 不同的端口,并且能够启动它并 运行ning..但我不希望 IIS 运行 在 80 以外的任何其他端口上,因为我不希望用户每次访问网站时都在 URL 中指定端口..

我现在 运行 缺少想法。任何建议将不胜感激。

谢谢!

找到了罪魁祸首.. 对我来说显然不是 Skype(在大多数情况下都是这样),是这项名为 IP Helper 的服务在端口 80 上 运行 并且与 IIS 冲突。我发现的方法是,我检查了服务主机 PID 下的所有服务 运行 - 本地系统(在我的例子中为 1164)并开始一次停止一个服务并查看 IIS 是否开始工作。 .只是想关闭这个线程..如果其他人遇到同样的问题,希望这会有所帮助。

我安装了VMware Workstation,解决办法是:"VMware -> Edit -> Preferences -> Shared VMs -> "禁用共享”。

我 运行 遇到了类似的问题,但端口 80 没有。在我的情况下,这是因为 IP 地址 [::] 不允许在任何端口上侦听。将它添加到注册表中的 ListenOnly 列表中解决了这个问题。 从管理员命令提示符:

netsh http add iplisten ipaddress=::

来自 this thread.