我应该使用Windows Management Service还是远程代理服务发布到远程服务器?

Rei*_*aka 5 asp.net deployment iis msdeploy

我有一个远程Web服务器,我有完全的管理员访问权限,我想部署一个网站.

当我使用Visual Studio的发布工具,以及其他似乎不太方便的东西(FTP等)时,我可以选择使用Windows管理服务或远程代理服务.所有文件都说是这样的:

要通过Remote Agent Service远程发布,请使用 http:// RemoteComputerName.此选项通常用于在网络内部署Web应用程序(在Intranet方案中).您必须具有适当的权限才能在目标服务器上执行部署.

要使用Windows Management Service发布到主机站点,请使用主机提供商指定的值.您通常只能使用服务器名称(HostedRemoteServer)或包含服务器名称,端口号和Web Deploy处理程序名称(https:// HostedRemoteServer:8172/MsDeploy.axd)的完整URL .该托管服务提供商可以告诉你的服务器的名称和端口号(如适用).

但这并不足以让我决定.是啊,我不是发布在网络上,但我有过,我部署到机器完全访问权限.与此同时,MsDeploy是Scott Hanselman 在他的演讲中描述的一件大事,我被认为是部署的绝佳方式.

那我该怎么办?是否有任何模糊的安全考虑或任何事情?

sco*_*732 4

我建议去管理服务路线.除了msdeploy功能之外,管理服务功能还使您能够从计算机远程管理IIS 7/7.5.将所有IIS服务器放在一个控制台中,您可以轻松地在一台计算机上导出应用程序并将其导入另一台计算机.

从安全配置角度和配置角度来看,它似乎是最复杂的msdeploy实现.IIS管理器允许您轻松配置端点周围的详细信息(SSL证书,端口等).嗯..这在Windows 2008和R2上的IIS 7/7.5上都是如此,但在Windows Vista或7上则不行.出于某些奇怪的原因,非服务器SKU上的Web管理设置没有UI.

代理基本上是一个独立的Web服务器,没有任何用户级权限功能.这就是为什么它要求进行远程部署的人在目标机器上具有管理员权限.这感觉就像一个更简单的裸机实现.由于您已经有IIS提供HTTP/HTTPS,并且由于IIS的HTTP实现具有内核级优化,因此您不会通过代理路由获得任何东西.

如果要从Windows Vista/7远程管理Windows 2008或R2,请在工作站上安装:http://www.microsoft.com/downloads/en/details.aspx? FamilyID = 32c54c37-7530-4fc0-bd20- 177a3e5330b7 ......这对我来说是锦上添花.