在使用行URL在对网站的一个栏目进行改造过程中出现了2个问题问题
1 要把一个ASPX文件映射到HTML,结果出现网站访问不了,但是在VS环境下一切正常,就是布置到服务器上才会出现问题,刚开始以为市IIS没有把HTML映射给aspnet_isapi.dll,但是映射了还是会出现问题,说找不到问题,这个时候需要注意把HTML映射的哪里有个检查文件是否存在去掉。好了 这样就可以访问了!
2 因为网站下面还有一个DISCUZ论坛,这个时候网站能访问了,但是下面的DISCUZ不能访问了,会出现错误,找不到文件或程序集名称“UrlRewriter.RewriterHttpModule, UrlRewriter”,或找不到它的一个依赖项行 。
解决有2种,第一种将URLWRITER.DLL拷贝到DISCUZ论坛下的BIN目录下,第2种办法市在DISCUZ的WEB.CONFIG目录下利用<httpModules>的<remove >去掉DISCUZ上一层的虚拟目录下WEBCONFIG的<ADD>所加的类型,这里要对称。
其中涉及到的原理就是:网站的配置文件有继承关系,当我们在网站的WEB.CONFIG配置了<httpModules>模块,它下面所有目录都会继承这个,但是在网站下面还有一个DISCUZ论坛的时候,DISCUZ也继承了,它会去自己BIN目录下寻找REWRITER.DLL这个时候它找不到,就会报错!