IIS开启伪静态后html静态页面无法访问的解决方法
2015-09-25 10:19
537 查看
IIS开启伪静态后,发现原本存在的html静态页面无法访问了,显示的404错误。网上查了下,是因为实现伪静态就是使用 URLRewriter 来映射后缀,会把asp等动态页面映射成html,但是原来存在的html静态页面也被定义的规则映射到其它页面了,所以找不到页面而无法访问。
有一个很简单的方法就是将html页面的后缀名改成htm,或者是把映射的规则改成映射为htm,总之就是把我们的伪静态页面和真正的静态页面分别用html和htm区分开来,但这只是治标不治本的方法。
最好的方法就是修改伪静态规则文件了,如果是IIS7我们就用记事本打开根目录下的web.config这个文件,找到<compilation >节点,向其中加入如下内容:
然后找到<httpHandlers>节点,添加下面这行代码:
如果你是IIS6的话那就是修改根目录下的httpd.ini文件,不过比较麻烦点,比如你你想要seo目录和这个目录下的所有html文件不应用伪静态规则能正常访问的话就在httpd.ini里添加下面这段代码。
OK,重启IIS,可以看到现在伪静态和真正的静态页面都可以访问了。
有一个很简单的方法就是将html页面的后缀名改成htm,或者是把映射的规则改成映射为htm,总之就是把我们的伪静态页面和真正的静态页面分别用html和htm区分开来,但这只是治标不治本的方法。
最好的方法就是修改伪静态规则文件了,如果是IIS7我们就用记事本打开根目录下的web.config这个文件,找到<compilation >节点,向其中加入如下内容:
< buildProviders > < add extension = ".html" type = "System.Web.Compilation.PageBuildProvider" /> </ buildProviders > |
< add verb = "*" path = "*.html" type = "System.Web.UI.PageHandlerFactory" /> |
RewriteRule /seo/ /seo/ [L] RewriteRule /seo/(.*).html /seo/$1.html [L] |
相关文章推荐
- html特殊字符
- 2015/9/25 吐槽
- HTML常用标签属性图
- 2015年9月20日第一节课html2-2
- html里的常用特殊符号表示大全
- 版本更新、滑动启动页、图片异步加载、抓取html网页新闻、内嵌小说阅读功能、PageView轮播图展示功能
- 关于checkbox/radio选中不选中HTML不变化
- C#实现HTML转WORD及WORD转PDF的方法
- html Table合并行和列
- 基本的Web控件一
- HTML_标签——随笔
- 转发:China2008 标题:SharePoint 文档库打开HTML 直接浏览而不是打开下载对话框
- html Table标签的初步使用
- Html body的滚动条禁止与启用
- html常用标记
- html段落的控制
- Html常用标签元素
- 网页制作视频教程(二)常用的HTML标签
- html结构和标签
- 【html】day04_图像和超链接