您的位置:首页 > Web前端 > HTML

IIS开启伪静态后html静态页面无法访问的解决方法

2012-12-13 22:39 477 查看
IIS开启伪静态后,发现原本存在的html静态页面无法访问了,显示的404错误。网上查了下,是因为实现伪静态就是使用 URLRewriter 来映射后缀,会把asp等动态页面映射成html,但是原来存在的html静态页面也被定义的规则映射到其它页面了,所以找不到页面而无法访问。

有一个很简单的方法就是将html页面的后缀名改成htm,或者是把映射的规则改成映射为htm,总之就是把我们的伪静态页面和真正的静态页面分别用html和htm区分开来,但这只是治标不治本的方法。

最好的方法就是修改web.config,我们用记事本打开web.config这个文件,找到<compilation >节点,向其中加入如下内容:

<buildProviders>

<add extension=".html" type="System.Web.Compilation.PageBuildProvider"/>

</buildProviders>

然后找到<httpHandlers>节点,添加下面这行代码:

<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory"/>

OK,重启IIS,可以看到现在伪静态和真正的静态页面都可以访问了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: