在Azure Web Apps中调用应用程序初始化模块

时间:2016-12-21 09:38:27

标签: asp.net asp.net-mvc azure web-config azure-web-sites

我有一个ASP .NET MVC 5应用程序,我在web.config中定义了一个初始化页面:

<applicationInitialization>
    <add initializationPage="/Cache/Index" />
</applicationInitialization>

此操作会为整个网站生成缓存,但现在永远不会调用它。

我希望在暂存插槽上部署之后立即调用此页面,但是当我从舞台切换到生产时,我不想调用此页面。

我怎样才能做到这一点?

感谢。

1 个答案:

答案 0 :(得分:0)

  

希望在暂存插槽上部署之后立即调用此页面,但是当我从舞台切换到生产时不会调用此页面。

众所周知,应用程序初始化模块将帮助在交换操作期间预热应用程序。如果你想让staging slot热身而不从staging转换到生产,你可以尝试创建一个dev插槽并启用Auto Swap,然后你可以将应用程序发布到dev插槽,它将从dev自动交换分期并使应用程序热身。

创建开发和暂存广告位

enter image description here

启用dev插槽的自动交换

enter image description here

配置AppInit模块

<system.webServer>
  <applicationInitialization>
    <add initializationPage="/Cache/Index.aspx" hostName="specify the host name to use for the warm up requests here" />
  </applicationInitialization>
</system.webServer>