【问题标题】:MSDeploy and "site under maintenance" pageMSDeploy 和“维护中的站点”页面
【发布时间】:2011-01-26 23:55:52
【问题描述】:

我是 MSDeploy 和 IIS 管理员的新手。

为了显示“站点维护中”页面,我们正在寻找两种替代方案。

1) 有一个 app_Offline.htm 页面,并在维护开始时将其同步到服务器。

2) 使用完全不同的站点创建一个单独的文件夹(它可以显示比 app_offline 页面更多的动态信息)。在维护期间,建议我们在更新站点时更改站点的虚拟文件夹映射以指向另一个文件夹。

有没有办法使用 MSDeploy 将虚拟文件夹更改为指向另一个文件夹?有没有其他方法可以通过脚本来做到这一点,而不必去每个服务器并手动更改文件夹?

【问题讨论】:

  • 您使用的是哪个版本的 IIS?

标签: asp.net iis-7 msdeploy


【解决方案1】:

使用 MSDeploy 设置 app_offline

我们过去所做的是使用 Msdeploy.exe 为我们的部署编写脚本。我们执行 3 个命令。

  1. 第一个命令部署 app_offline.htm 页面。

    msdeploy -verb:sync -source:filePath=c:\location\app_Offline.htm -dest:filePath=c:\site\app_Offline.htm

  2. 其次,我们实际上使用相同的“同步”动词但使用包来部署站点。

  3. 第三,我们将使用 MSdeploy 删除 app_offline.htm。

    msdeploy -verb:delete -dest:filePath=c:\site\app_Offline.htm

您可以使用“computername”目标开关跨多个服务器执行 msdeploy。喜欢:

msdeploy -verb:sync -source:filePath=c:\location\app_Offline.htm,computername=sourcemachine  -dest:filePath=c:\site\app_Offline.htm,computername=destmachine  

您可以在此处通过命令行找到有关使用 msdeploy 的所有不同参数的更多信息:http://technet.microsoft.com/en-us/library/dd568991%28WS.10%29.aspx

使用 MSDeploy 创建虚拟目录

如果您仍想创建虚拟目录,我建议在每个目标服务器上创建一个 powershell 脚本,该脚本将为每个服务器执行此操作。您的 powershell 脚本中将包含以下内容:

New-Item 'IIS:\Sites\Default Web Site\VirtualDirName' -type VirtualDirectory -physicalPath c:\test\virtualDirectory1

您可以在此处找到有关为此使用 powershell 的更多信息: http://learn.iis.net/page.aspx/433/powershell-snap-in-creating-web-sites-web-applications-virtual-directories-and-application-pools/

然后使用“运行命令”提供程序使用 msdeploy 执行。您将在每台服务器上执行此行。

msdeploy -verb:sync -source:runCommand="net start createvirtualdir.ps" -dest:computername=destmachine

【讨论】:

  • 感谢您的回答。为了测试这一点,我需要更多地学习 powershell。当我有机会对此进行测试时,我会更新。
  • 如果您的站点没有自行发布 App_Offline.htm,您提到的第二步将在开始同步包后立即删除 App_Offline.htm。所以它不会像你预期的那样工作。 PS。应用 App_Offline.htm 的新推荐方法是使用 EnableMSDeployAppOffline 发布配置文件的参数。
  • @Funbit,微软现在已经撤下了那个博客。这是 WayBackMachine 上的博客:Web publishing updates for app offline and usechecksum
猜你喜欢
  • 1970-01-01
  • 2014-06-02
  • 2017-11-03
  • 1970-01-01
  • 1970-01-01
  • 2010-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多