单个App的Web部署备份不是整个站点

时间:2013-10-07 16:15:26

标签: iis deployment backup publish webdeploy

我已按照此处的说明http://www.iis.net/learn/publish/using-web-deploy/web-deploy-automatic-backups 并且设置正常。但我的网站有大量的应用程序。当我在网站上发布一个应用程序时,整个网站都在备份。

我想要一个设置,当我向我的网站发布应用程序时,web部署将备份该特定应用程序。 这是我的设置

<wdeploy>
        <backup turnedOn="true" enabled="true" backupPath="d:\AppBackups\{siteName}" numberOfBackups="5" continueSyncOnBackupFailure="false">
            <excludedProviders>
                <provider name="appPoolEnable32Bit" />
                <provider name="setAcl" />
                <provider name="appPoolPipeline" />
                <provider name="createApp" />
                <provider name="appHostAuthOverride" />
                <provider name="appPoolNetFx" />
            </excludedProviders>
        </backup>
    </wdeploy>

2 个答案:

答案 0 :(得分:1)

我也在努力解决这个问题,并找到了解决方案/解决方案,尽管我不喜欢它。 您可以创建另一个内部网站&#34;映射到与子应用程序相同的路径位置,并为其设置备份。这样,当您部署到内部站点时,它将反映在另一个站点的子应用程序中,并仍然可以进行备份。 编辑:

  • 1.您可以拥有站点A:带有子应用程序B,C,D
  • 2.然后,您可以创建一个站点B,其物理目录链接到与应用程序B相同的位置
  • 3.然后,您可以在站点B上设置备份,它们将反映在应用程序B中
  • 4.站点B可以设置为不公开,您可以维护站点A,应用程序B的子目录路径

答案 1 :(得分:0)

我也很难找到使用Microsoft提供的工具的方法,但我不认为这是可能的(按设计):

1)Configure Web Deploy Publishing(IIS菜单项)选项仅在Web站点级别可用,而不是Web应用程序级别。也许他们认为,因为您在站点级别进行配置,并且您可以在任何Web应用程序上部署Visual Studio,所以只需确保支持所有站点。

2)部署自动备份似乎知道只扩展与网站相关的令牌:{SitePathParent}{siteName},因此没有应用级别。

因此,要么接受完整站点备份(整个网站的zip文件可能需要一些时间),要么使用一些自定义Powershell脚本来部署IIS。