Archive | 四月, 2008

WordPress permalinks rewrite rules for IIS

为了完美的实现伪静态,快被permalinks的404错误整死了。
经过N多资料的收集,让空间商的客服和我一起忙了半天,终于在傻瓜不傻的博客上找到了一个很好了httpd.ini的解决方案。
(本来用甜蚂蚁的解决方案可以实现postname%.html结尾的,可是由于没有完全看懂代码,最后被替换掉了。也不想再麻烦空间商了。顺便表扬一下空间商的客服^_^)

我的主机系统是WIN+IIS,所以没办法只能麻烦一些。
这个rewrite rule只写了一种规则:
“/%year%%monthnum%%day%/%postname%/”
替换了原来的
“/index.php/%year%%monthnum%%day%/%hour%%minute%%second%/%postname%/”
而且确实彻底去掉了index.php前缀。文章和页面均测试通过。

点这里下载httpd.ini文件

这里要注意别和我犯同一个错误,我用了这个rule以后发现文章页正常了但是页面还是404。所以要仔细看这一段:
RewriteRule /(aboutme|works|resources|guestbook|archives
|sitemap|links|works|pluginsused)/ /index.php\?pagename=$1
这里就是说你创建的页面permalink要在这里定义。用 | 隔开就可以。
当然了,前提是你用的空间要支持mod_rewrite,所以一定要事先咨询好哦。

现在的一个问题就是permalinks对中文的支持还不够好,像如果文章的TITLE出现了中文那么URL会是这样:
%e7%bb%88%e4%ba%8e%e6%90%9e%e5%ae%9awordpress-25-permalinks-rewrite-rule
无奈只能手动改。如果能有个自动把汉字转换为拼音的plugin就太好了。

发现原来那个文件没有照顾到/feed/,导致有人无法订阅。现在搞定了。文件已经更新。另外,如果你的WP不是装在根目录下的话,还要自己手动改一下。

阅读全文标签: , , 暂无评论
Page 10 of 10« First...678910