我开发了自定义托管HttpModule(.NET 2),将其安装在 GAC 上,并将其添加到{8.5}全局IIS Modules
部分。
对于集成模式的每个网站,此模块在其模块部分中显示为继承,并且它适用于所有.NET 2和.NET 4个Web应用程序(无需操纵每个站点Web.Config
)。
对于经典模式中的网站,它不存在,因此无法在经典网络应用程序中访问和使用。
我尝试以任何方式编辑applicationHost.config
和Web.Config
(v2和v4),但我没有得到任何结果(似乎Machine.Config
没有位置)。
我如何以及在何处全局注册相同的模块来处理经典模式而无需将dll添加到bin和/或编辑每个网站的Web.Config?
答案 0 :(得分:0)
好的,现在有效。供将来参考:
我编辑了function Test() {
debugger;
if(Xrm.Page.getAttribute("new_test").getValue()){
Xrm.Page.ui.controls.get("new_test").setDisabled(true);
}
}
并且没有得到任何响应,因为IIS从64位框架读取配置,因此在C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config
内添加模块解决了这个问题。
AppPools<还必须编辑.NET 4,C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config
和C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\machine.config
。
对于集成模式,通过IIS GUI将自定义模块添加到主模块部分就足够了。
因此,在IIS,Integrated和Classic,32位和64位下的所有.NET 2.0 +网站都可以访问安装在GAC上的一个自定义模块,而无需单独编辑每个网站的Web.Config。
这对于主持人和服务器管理员监控网站特别有用。没有直接干预的活动(错误,DDOS攻击等)。