从Windows 8升级到安装了Web管理服务的Windows Server 2012(IIS 8),我可以在W8设备上使用IIS Manager来管理远程服务器,但是当我执行以下命令时,我会从WMSvc收到404.7错误:
msdeploy.exe" -verb:dump -source:contentPath=c:\InetPub\wwwroot,computerName=https://uktnws01:8172/MsDeploy.axd,userName=corp\administrator,password=WMSvcIsCrap,authType=Basic -allowUntrusted
我已经尝试了各种组合和参数。我可以使用telnet连接到该端口,我知道它是开放的。
我只是从Windows中删除了管理服务功能并重新启动。我会倒一杯威士忌,准备一些小吃。同时,如果您有任何想法,请分享。
在下面加入我的实时博客并关注最新情况。
更新1
删除管理服务后,我现在获得以下错误:
错误:无法连接到远程服务器 错误:由于目标计算机积极拒绝,因此无法建立连接 192.168.2.22:8172 错误计数:1.
第二行是一个新消息!太棒了。
更新2
好吧,情况正在变得越来越糟糕。重新安装后,远程IIS控制台将提醒证书,然后说:
服务器不接受远程连接。
但我想这可能是因为我可能没有重新启用远程管理,而只是安装了该东西。
更新3
启用远程管理后,远程IIS再次正常工作,但是404错误又返回了。出于SEO的目的,这里是完整的错误:
Error Code: ERROR_DESTINATION_NOT_REACHABLE More Information: Could not connect to the remote computer ("uktnws01"). On the remote computer, make sure that Web Deploy is installed and that the required process ("Web Management Service") is started. Learn more at http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_DESTINATION_NOT_REACHABLE.
Error: The remote server returned an error: (404) Not Found.
Error count: 1.
更新4
通过VPN连接到客户端的另一个Web服务器尝试使用相同的命令,结果非常顺利!看来我的全新2012版本构建的IIS出了问题。
更新5
我为WMSvc启用了失败请求跟踪,并发现404.7来自RequestFilteringModule模块。 根据文档,404.7表示“拒绝文件扩展名”。
http://www.iis.net/configreference/system.webserver/security/requestfiltering
添加.axd文件的显式服务器规则并没有帮助。看到这个模块很有趣,因为它对URL长度和内容大小施加限制。你能想象在IIS托管的WCF应用程序中进行故障排除吗?哈哈,我真的要哭了。
更新6
我正在删除请求筛选,这意味着还需要删除ASP.NET和其他各种东西。他们需要一个“一次性重新安装Windows功能和依赖项,因为我们编写的软件不可靠”的选项。
更新7
我重新安装了所有内容,突然一个名叫Richard的澳大利亚人出现了,他完全解释了Web Deploy实际上并不是WMSvc的标准部分,即使在IIS 8上也是如此,并且我需要安装Web Deploy。
于是我这样做了。然后我禁用了MsDepSvc,它是Web Deploy安装的另一部分(我认为它是Web Deploy的全部),因为它占用了80端口并阻止负载均衡器看到IIS服务停机。
现在它可以工作了。我可以去睡觉了。