MS Web Deploy создает новую папку под веб-сайтом?

Я использую этот пост для развертывания приложения MVC5 в IIS 8. В IIS у меня есть веб-сайт "Веб-сайт по умолчанию", который указывает на физическое местоположение "C:\Inetpub\wwwroot\mywebsite" Мой файл сборки выглядит следующим образом

    <?xml version="1.0" encoding="utf-8"?>
        <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build" ToolsVersion="4.0">
          <PropertyGroup>
            <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
            <ProjectFile Condition=" '$(ProjectFile)' == '' ">.\UI\$(ProjectName)\$(ProjectName).csproj</ProjectFile>
            <DeployServiceUrl Condition=" '$(DeployServiceUrl)' == '' ">http://localhost</DeployServiceUrl>
          </PropertyGroup>

          <Target Name="VerifyProperties">
            <!-- Verify that we have values for all required properties -->
            <Error Condition=" '$(ProjectName)' == '' " Text="ProjectName is required." />
          </Target>

          <Target Name="Build" DependsOnTargets="VerifyProperties">
            <!-- Deploy using windows authentication -->
            <MSBuild Projects="$(ProjectFile)"
                     Properties="Configuration=$(Configuration);
                                     MvcBuildViews=False;
                                     DeployOnBuild=true;
                                     DeployTarget=MSDeployPublish;
                                     CreatePackageOnPublish=True;
                                     AllowUntrustedCertificate=True;
                                     MSDeployPublishMethod=RemoteAgent;
                                     MsDeployServiceUrl=$(DeployServiceUrl);
                                     SkipExtraFilesOnServer=True;
                                     UserName=;
                                     Password=;"
                     ContinueOnError="false" />
          </Target>
        </Project>

Я запускаю следующую команду для сборки и развертывания

msbuild build.xml /p:Configuration=Release;ProjectName=MyProjectName;DeployServiceUrl=http://localhost

Команда строит проект и развертывает проект. Однако он не развертывает проект непосредственно в "Веб-сайте по умолчанию", а создает новое приложение в "Веб-сайте по умолчанию" с именем "MyProjectName_deploy", и это приложение указывает на новое физическое местоположение. "C: \ Inetpub \ Wwwroot \ МойВебСайт \MyProjectName_deploy"

Я хочу, чтобы код был развернут непосредственно на C:\inetpub\wwwroot\mywebsite, где указывает "Веб-сайт по умолчанию".

1 ответ

Добавьте следующее в ваш файл сборки:

<PropertyGroup>
  <DeployIisAppPath>Default Web Site</DeployIisAppPath>
</PropertyGroup>

Связанные детали - https://dotnetcatch.com/2016/03/03/simple-service-versioning-with-webdeploy/

Другие вопросы по тегам