我需要从代码重新启动应用程序池,有人知道该怎么做吗?我看过很多 iis6 的例子,大多数评论都是“它不起作用”
所以有什么想法,或者无论如何让 IIS 观察文件,当它发生变化时,应用程序池会重新启动?
实际上,在 web.config 末尾附加一个空格 ' ' 将导致应用程序重新启动。
在 web 应用程序文件夹 (inetpub\wwwroot\webapp) 中创建一个 bat 文件 (rest.bat)
echo >> web.config
如果您运行批处理文件,您将获得回收
更简单的方法.. 为什么不当您正在查看的文件发生更改并且您想要回收应用程序时只需更改 Web.config 中的一个键。对 Web.config 的任何更改都会导致您的应用程序回收。
与其这样做(回收池),为什么不使用基于文件的缓存依赖项呢?这里有一个使用 xml 文件执行此操作的示例。这样就没有更多的应用程序回收。
XmlDocument urls = new XmlDocument();
urls.Load(Server.MapPath("pathetourlfile.xml"));
CacheDependancy dependancy = new CacheDependency(Server.MapPath("pathetourlfile.xml"))
Cache.Insert("URLS", urls, dependency)