网上介绍部署 ISAPI Rewrite 的文章也不少,但大体都是对老版本的介绍,或者比较凌乱,我按照自己的做法结合前人的经验整理了一下,供大家参考。菜鸟发帖,难免有疏漏的地方,欢迎大家指教,也欢迎大家去我的博客转转。
Apache 的 mod_rewrite 功能可以说是相当的强大,其可以实现伪装静态 URL 以达到某些要求 (譬如说 SEO) 。 WordPress 也对此功能提供支持,在” 设置-永久链接” 中我们可以自定义永久链接结构。不过这一切都是基于 mod_rewrite,难道 IIS 只能干瞪眼?不争气的.net!
其实 IIS 中也能实现伪静态 URL 。虽然没有 mod_rewrite,但是有专门为 IIS 准备的 ISAPI Rewrite 。 ISAPI_Rewrite 是一个强大的基于正则表达式的 URL 处理引擎,其功能类似于 Apache’s mod_Rewrite 。目前最新的版本是 3.0,有 Full 和 Lite 两种发行方式,前者可以免费使用 45 天,而后者是完全免费试用但是限制了一部分功能。
我们首先到 http://www.helicontech.com/download-isapi_rewrite3.htm 下载 Lite 版的安装包,这个页面可以看到 ISAPI Rewrite 还是很强的,除了提供 32 位和 64 位的程序,居然还有支持安腾 (Itanium) 的版本。在服务器上安装完以后,我们可以在” 开始-程序” 中找到其快捷方式,打开后如图:
然后点”edit” 来修改 httpd.conf 文件,2.0 版本的文件名是 httpd.ini,可以通过”Import from v2.0″ 导入。 (httpd.conf 里究竟写些什么东西呢?我们放到最后再说)
保存以后推出,我们打开 IIS 管理器,选中”Web 服务扩展”,然后点选红色框中的链接。
点击以后会弹出如下对话框,这里我们选择” 在服务器端的包含文件”,点击确定
随后我们打开网站的属性菜单,选择”ISAPI 筛选器” 标签,然后添加一个筛选器,填写内容如下
全部设置好,依次确定完以后重启一下 IIS 就可以了
接下来我们来看 httpd.conf 中的内容,我所用的内容是通过搜罗网上很多资源然后再自己稍作修改而成的,在此对这些前辈表示感谢 (边搜遍试,没有把作者们记下来) 。大家可以点击下载:http://bbs.chinaz.com/OutputAttachment.html?ID=26738&action=download
接下来就是 WordPress 里的设置了,在 WordPress 的设置-永久链接中我们选择自定义结构,然后输入框中填写/post/%post_id%.html,最后保存修改,到此就大功告成了!测试下来日志、分类、存档、回复、 tag 、 rss 等均正常显示。
以上操作我也是摸着石头过河,网上资源大多是讲老版本的,内容不一定通用,我的方法也不一定是唯一的方法。希望大家也能分享一下自己的经验。
其实伪静态 URL 对 SEO 有多大帮助,网上的争论也很多。不管结果如何,我们也要发挥 DIY 精神,乐在过程。谢谢大家观看,也希望大家能常来我的博转转。