我使用 Web Deploy
从我的 GIT
到 Azure App
配置了自动部署。每次将新代码推送到存储库时,都会启动构建,然后使用 Web Deploy
部署到 Azure
。
问题是 Web 应用
(ASP.NET MVC) 继续使用已部署的代码来服务请求,并且文件替换并不会真正影响它。即使 web.config 已更改。基本上,我可以强制加载新应用程序的唯一方法是手动重新启动它(或停止/启动)。
这是我的发布资料:
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>MSDeploy</WebPublishMethod>
<ADUsesOwinOrOpenIdConnect>False</ADUsesOwinOrOpenIdConnect>
<PublishProvider>AzureWebSite</PublishProvider>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish>https://app-name.azurewebsites.net</SiteUrlToLaunchAfterPublish>
<LaunchSiteAfterPublish>False</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<MSDeployServiceURL>app-name.scm.azurewebsites.net:443</MSDeployServiceURL>
<DeployIisAppPath>app-name</DeployIisAppPath>
<RemoteSitePhysicalPath />
<SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
<EnableMSDeployBackup>True</EnableMSDeployBackup>
<UserName>$app-name</UserName>
<Password>...</Password>
<AllowUntrustedCertificate>True</AllowUntrustedCertificate>
<_SavePWD>True</_SavePWD>
<_DestinationType>AzureWebSite</_DestinationType>
</PropertyGroup>
</Project>
similar topic在msdn上没有答案
最佳答案
David 已经分享了他的见解。还有另一种方法可以通过使用部署槽来解决这种情况。您可以创建一个插槽,然后配置自动交换来解决此问题。这增加了零冷启动和零停机的好处。
请参阅此了解更多信息: Configure Auto Swap
关于asp.net - Web 部署到 Azure 不会强制 Web App 接受新的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42083445/