![Web 部署到 Azure VM 失败](https://linux22.com/image/735665/Web%20%E9%83%A8%E7%BD%B2%E5%88%B0%20Azure%20VM%20%E5%A4%B1%E8%B4%A5.png)
我目前正在学习这里 使用 Visual Studio 将 ASP.NET 应用程序部署到我的 Azure VM。本教程列出了两个先决条件;我都满足了。
不幸的是,我不断遇到这个错误:
Web 部署任务失败。(无法使用指定的进程(“Web 管理服务”)连接到远程计算机(“XXX.westeurope.cloudapp.azure.com”),因为服务器没有响应。请确保远程计算机上已启动进程(“Web 管理服务”)。了解更多信息: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_COULD_NOT_CONNECT_TO_REMOTESVC。
运行该命令net start wmsvc
得到以下响应:
The requested service has already been started.
当我运行时netstat -an
,我可以验证端口 8172(我试图将我的 ASP.NET 应用程序部署到该端口)正在监听:
TCP 0.0.0.0:8172 0.0.0.0:0 正在侦听
我还确保防火墙内有一条入站安全规则,允许所有通过 TCP 连接到端口 8172。在我的 Azure 门户上,我也添加了相同的安全规则。
关于如何解决此问题有什么想法吗?
答案1
经过几个小时的反复试验(以及大量的 Google 搜索),我终于解决了这个问题。
本教程提供的信息这里是不完整/不准确的。仅仅按照给出的说明来安装 Web Deploy 是不够的——事实上,声称“一旦安装了 Web Deploy,Web 管理服务就会启动并设置为自动启动“(我强调)是错误的。以下是从IIS
中的选项卡截取的屏幕截图Server Manager
:
如您所见,的Start Type
为。Web Management Service
Manual
下载并安装 Web Deploy 3.6 后,需要前往Programs and Features
,找到Microsoft Web Deploy
,然后右键单击并选择Change
。单击Next
第一页,然后Change
单击第二页,将看到此窗口:
确保两者IIS Manager UI Module
(以及其下方的所有内容)都Remote Agent Service
被选中。
完成后,当导航到服务器管理器并单击选项IIS
卡时,将看到 Web 管理服务和 Web 部署代理服务现在都在自动运行:
完成所有这些后,现在可以直接在 Azure VM 上部署 ASP.NET 应用程序。