我尝试在Win 2008 R2,IIS 7.5和Windows 7,IIS 7上使用应用程序初始化。它无法按预期工作。我下载了x64版本。
来自applicationhost.config
的来源:
<applicationPools>
<add name="MyApp" autoStart="true"
startMode="AlwaysRunning"
managedRuntimeVersion="v4.0">
</applicationPools>
<sites>
<site name="Default Web Site" id="1" serverAutoStart="true">
<application path="/MyApp" applicationPool="MyApp"
preloadEnabled="true">
</site>
</sites>
申请web.config
档案:
<system.webServer>
<applicationInitialization remapManagedRequestsTo="loading.html"
skipManagedModules="true">
<add initializationPage="/default.aspx" />
</applicationInitialization>
</system.webServer>
它没有任何影响。当我重新启动IIS并在浏览器中加载URL(localhost/.../default.aspx
)时,它没有显示loading.html
页面,看起来appPool似乎总是在运行\预热。
此外,它没有显示w3p进程的多个实例。它不起作用。
在Windows 7,IIS 7或Windows 2008 R2,IIS 7.5上配置应用程序初始化模块的小视频会有所帮助,因为我可能错过了一些内容。
答案 0 :(得分:5)
我们发现在安装它时,当在带有IIS 7.5的Windows Server 2008 R2上重新启动应用程序池时,会在第一次请求网站时导致HTTP 500错误
非常令人失望,我希望这将是一个很好的模块,但它确实看起来很脆弱,我们已经停止使用它了
答案 1 :(得分:2)
试试这个工具:
Application Initialization UI for IIS 7.5
它对我有用(我需要激活托管使用net.Tcp
的WCF服务的Web应用程序,对服务的第一次调用不会激活它,因为它不是在HTTP协议之上。 .so我需要一些外部启动它并在App_…
事件处理程序中执行一些自定义代码)
答案 2 :(得分:0)
我也无法让它工作,我的问题是我试图使用32位编辑器手动修改“C:\ Windows \ System32 \ inetsrv \ config \ applicationHost.config”(记事本中的++) case)并且实际打开“C:\ Windows \ SysWOW64 \ inetsrv \ Config \ applicationHost.config”,这不适用于我的64位站点/池。导致我得出结论的副作用是,记事本++中的文件永远不会与我在IIS管理器中看到的相匹配,这导致我找到了IIS 7.5 applicationHost.config file is not being updated。
一旦我使用64位编辑器(例如sublime text 3)打开它,我开始看到IIS管理器中描述的更改,并且在对我的应用程序池和站点进行规定的应用程序初始化更改后,一切都开始了工作。
我怀疑上面回答中描述的UI工具可能适用于其他人,因为它作为64位应用程序运行,因此更新了正确的applicationHost.config文件。