ASP.NET站点有时候会莫名其妙的重启,什么原因导致的却不得而知,经过一番折腾后,我总结了导致ASP.NET站点重启的10个原因
\r\n1. 回收应用程序池会导致站点重启,记录的原因是:
\r\nHostingEnvironment initiated shutdown HostingEnvironment caused shutdown
\r\n2. 修改应用程序池回收规则会导致重启,记录的重启原因:
\r\nHostingEnvironment initiated shutdown HostingEnvironment caused shutdown
\r\n3. 在IIS中修改站点的名字,不会导致重启
\r\n4. 修改站点根目录的配置文件web.config,在配置文件注释中添加几个空格会导致重启,记录的重启原因是:
\r\nCONFIG change HostingEnvironment initiated shutdown
\r\n但是修改子目录的web.config文件不一定会导致马上重启
\r\n5. 修改aspx,master文件不一定会导致重启;但是每修改一次都会导致一次重新编译,重新编译次数达到15次之后会导致站点重启,重启原因是:
\r\nRecompilation limit of 15 reached HostingEnvironment initiated shutdown
\r\n15次后重启这个数字可以在web.config中做配置,修改compilation的numRecompilesBeforeAppRestart属性值即可。
\r\n6. 删除bin目录下的pdb文件,会导致重启,记录的重启原因是:
\r\nChange Notification for critical directories.
\r\n在bin目录下新建一个空的文件夹,会导致站点重启,重启原因是:
\r\nDirectory rename change notification for \'D:projectsTestWebAppTestWeb\'.T estWeb dir change or directory rename
\r\n在bin目录下删除空文件夹,会导致站点重启,记录原因是:
\r\nDirectory rename change notification for \'D:projectsTestWebAppTestWeb\'.T estWeb dir change or directory rename
\r\n7. 修改Global.asax文件会导致站点重启,即使加几个空格也会重启,记录的重启原因是:
\r\nChange in GLOBAL.ASAX HostingEnvironment initiated shutdown
\r\n8. 对App_Code目录做修改会导致站点重启
\r\n在站点根目录下添加一个名字为App_Code的文件夹,会导致重启,记录的重启原因是:
\r\nChange Notification for critical directories. App_Code dir change or directory rename
\r\n删除App_Code文件夹会导致站点重启,记录的重启原因是:
\r\nFile Change Notification Error in D:projectsTestWebAppTestWebapp_code
\r\nChange Notification for critical directories.
\r\nApp_Code dir change or directory rename
\r\n在App_Code文件夹下面新建或者删除一个cs文件,会导致站点重启,记录的原因是:
\r\nChange Notification for critical directories. App_Code dir change or directory rename
\r\n9. 对关键路径的修改都会导致站点重启,关键路径包括:
\r\nbin, App_Code, Web References,App_Browsers,App_GlobalResources,App_LocalResources
\r\n10. 另外杀毒软件对文件的扫描,有可能会导致ASP.NET进程误认为文件或者关键路径发生了变化,也会导致重启。
\r\n以上是我总结的导致ASP.NET站点重启的10个原因。 总的来说有三个方面会导致站点重启:一方面是IIS配置发生变化;另一方面是ASP.NET相关文件配置文件,global文件,aspx,ascx,master等类型的文件发生变法;第三个方面是关键路径bin,app_Code, Web References,App_Browsers,App_GlobalResources,App_LocalResources发生变化。
\r\n如何记录ASP.NET站点重启的原因呢?
\r\n\r\n