如何在IIS上配置Web Deploy发布功能,以便开发人员可以发布?

时间:2013-10-08 03:19:32

标签: asp.net iis visual-studio-2012 iis-7.5 iis-8

我在Windows Server 2012上控制运行IIS 8的服务器。我想在Visual Studio 2012中使用“发布”选项发布一些基本的asp.net网站。在服务器配置步骤中没有好的/当前的Microsoft文章。< / p>

1)我究竟需要在服务器上做什么?我没有在各种IIS角色下看到任何“Web部署”角色选项。我读过一些人从Microsoft下载并安装“Web Deploy 3.0”但该文件已有一年的历史,我不得不下载另一个文件以使用升级的IIS文件部署选项。如果您使用的是IIS7或IIS7.5而不是像我这样的IIS8,请随时回复您的操作,但请告诉我您使用的是哪个版本。

2)身份验证过程是否已加密?例如,FTP将以纯文本形式发送密码。 FTP over SSL没有,但设置甚至自发的SSL证书只是为了获得安全的身份验证而烦人。那么Web部署呢?是安全还是不安全?

3)我必须在服务器的防火墙上打开端口8172吗?微软的文档称我“可能需要”。

4)在Visual Studio端,它需要一个帐户进行身份验证。这是服务器上的Windows帐户吗?我应该右键单击服务器上的IIS网站文件夹并在此处添加此用户,还是有其他一些将用户映射到网站的首选方式?如果是,那么需要什么权利?

请回答上述任何一项或全部内容,但请关注服务器端配置,而不是客户端(visual studio)。请不要建议FTP,因为我真的想尝试Web Deploy。我也添加了一个IIS 7.5标签,因为有些答案可能与IIS 8相同。

2 个答案:

答案 0 :(得分:28)

似乎仍然必须下载Web Deploy扩展。此外,Version 3.5现已可用。

要在服务器上下载,默认的IE安全规则将要求您将http://*.microsoft.com等内容添加为受信任的站点,否则您无法下载安装程序。

整个软件包的用途相当大,涵盖了IIS的许多部署/备份/传输类型方案。因此,当您安装它时,它将变为“Web Platform Installer 4.6”,并且除了Web Deploy 3.5之外还会安装大约10个先决条件。这些先决条件包括CLR类型,SQL Server框架(即使您没有安装SQL Server),SQL Server共享管理对象等。之后我确实检查了所有这些项目是否可以通过控制面板卸载(如果我改变主意的话)关于网络部署)他们在那里。

最后,要在网站上配置Web部署,我找到了这个文档:

http://www.iis.net/learn/publish/using-web-deploy/configure-the-web-deployment-handler

要查找有关此内容的更多信息,请使用google“web deployment handler”。

看起来您也可以配置安全身份验证,这是我关闭此Web Deploy发布路径而不是使用纯文本FTP的主要原因。但是,http://www.iis.net/learn/publish/using-web-deploy/introduction-to-web-deploy

Web Deploy is secure. Web Deploy supports transfer over HTTPS. Note that variants of FTP such as SFTP and FTPS are also secure.

我不确定这是否意味着无论如何我都必须使用SSL证书。我希望Web Deploy提供更多安全且不需要证书的身份验证选项。

答案 1 :(得分:14)

标记正确的答案向我指出了将网站从Visual Studio 2013发布到Server 2012的正确方向。“验证连接”按钮保持说明检查Web管理服务已安装。

截至2014年4月,这些简单的步骤有效:

安装Web部署

在Powershell中:
(来自:https://www.orcsweb.com/blog/jamie-furr/manage-and-install-iis8-on-windows-2012-server-core/

  • 安装-WindowsFeature Web服务器
  • 安装-WindowsFeature Web-Mgmt-Service
  • Set-ItemProperty -Path HKLM:\ SOFTWARE \ Microsoft \ WebManagement \ Server -Name EnableRemoteManagement -Value 1
  • Net Stop WMSVC
  • Net Start WMSVC
  • netsh advfirewall firewall add rule name =“允许Web 管理“dir = in action = allow service =”WMSVC“

在IIS中:
   (从    http://blog.richardszalay.com/2013/02/02/building-a-deployment-pipeline-with-msdeploy-part-4-server-configuration/

  • 创建新的非管理员用户
  • 创建用户后,我们需要 授予其部署站点的权限。右键单击你的 网站并从中选择“配置Web部署发布...” “部署”子菜单