最终目标是做到这一点,以便每当我的应用程序池被回收时(每当我发布网站更新时都会发生这种情况),我的网站就会被访问一次以“预热”。通常,回收后第一次访问需要 2.5 秒,后续访问只需 0.5 秒,因此每次更新后都需要访问一次。我想自动执行此操作,Windows 应用程序初始化功能似乎就是实现此目的的方法。
问题是,启用此功能后,在重新启动应用程序池(或重新启动任何内容)时,我看不到访问我的网站的任何访问日志。应用程序初始化功能似乎根本不起作用。我在系统事件日志中没有看到任何错误,也没有看到任何进一步排除故障的方法。
这是环境:
以下是我的配置(使用IIS 8.0 应用程序初始化指南):
system.webServer/applicationInitialization部分:

故障排除:
system.webServer/applicationInitialization部分中的各种设置,并将其移至 web.configglobalModulesapplicationHost.config 文件的部分有这个,但我浏览到该文件夹,它是空的。我本来期望那里有一些 dll 文件,包括 Warmup.dll:<add name="ApplicationInitializationModule" image="%windir%\System32\inetsrv\warmup.dll" />
Run Code Online (Sandbox Code Playgroud)