IIS使用脚本切换路径

IIS使用脚本切换路径,iis,powershell,web-deployment,Iis,Powershell,Web Deployment,不太确定如何实现这一点,或者是否有可能?我目前在IIS中定义了两个网站 MySite_生产 MySite_分期 这些站点使用C驱动器上的两个物理文件夹 米西特斯洛塔酒店 米西特布 我正在使用Visual Studio 2012的Web Deploy将任何新部署推送到MySite\u Staging,比如说,MySite\u SlotA的。当我进行了一些粗略的检查后,我停止MySite\u登台,然后进入MySite\u制作并将路径更改为MySite\u SlotA。这与我在单个web服务器

不太确定如何实现这一点,或者是否有可能?我目前在IIS中定义了两个网站

  • MySite_生产
  • MySite_分期
这些站点使用C驱动器上的两个物理文件夹

  • 米西特斯洛塔酒店
  • 米西特布
我正在使用Visual Studio 2012的Web Deploy将任何新部署推送到
MySite\u Staging
,比如说,MySite\u SlotA的
。当我进行了一些粗略的检查后,我停止
MySite\u登台
,然后进入
MySite\u制作
并将路径更改为
MySite\u SlotA
。这与我在单个web服务器上完成部署过程的无缝程度差不多


我的问题是,我是否可以编写某种Powershell脚本或bat文件来为我切换路径?我不太喜欢Powershell,但如果它有可能自动执行此例程,我很乐意对此进行研究。

我知道这有点像是死灵巫术使其复活,但我只是需要一些Powershell来更改iis中web应用的物理路径。 有一个很好的单行程序可以使用(技术上是2行,因为需要导入库)


显然,您需要将
默认网站
C:\Deploy\MyAwesomeWebsitePhysicalPath
更改为适合您的情况

我不确定这样做是否正确。也许最好考虑一个脚本,将暂存文件移动到生产文件夹,而不是在您满意后将IIS指向暂存文件夹。更改路径后,生产文件夹会发生什么情况。如何备份或清理生产。将临时文件移动到生产文件夹将损坏正在运行的实例,并为使用该站点的用户抛出错误,直到脚本移动了所有文件。当我将路径从slotA更改为slotB时,我会保持slotA不变,以便在出现任何问题时可以回滚。切换可能会对现有用户造成类似的问题,但这是一个不同的争论。是的,但由于文件存在,它只需重新编译。太棒了,现在我可以轻松地自动化IIS路径切换,所以我不需要在凌晨1点起床来打开开关。实际上,有一大堆帖子不起作用或过于复杂。这只不过是个骗局!
Import WebAdministration
Set-ItemProperty 'IIS:\Sites\Default Web Site' -Name PhysicalPath -Value C:\Deploy\MyAwesomeWebsitePhysicalPath