适用于阿里云ACE的WordPress Rewrite规则

2014-08-06

阿里云(Aliyun)

随着阿里云ACE(阿里云引擎)功能的日臻完善,我最近在考虑将博客迁移到ACE平台上。因为我的博客中的大部分URL都使用了Rewrite,可是偏偏网络上并没有适用于阿里云ACE的,所以我只能自己写了。

在经历了繁复的拼凑过程之后,终于给搞出来了:

rewrite:
– url: ^$
script: /index.php last
– url: ^/(?!wp-)([\w/_-]+(\.html$)?)$
script: /index.php/$1 last

这段规则由两部分构成:

第一条Rewrite语句用于对首页进行重写,比如用户访问“http://mawenjian.aliapp.com/”,服务器会将请求重写到“http://mawenjian.aliapp.com/index.php”。如果没有这一条规则的话,就会出现找不到首页的情况。

第二条用于对分类页面、TAG页面、文章页面等的URL进行重写。这条规则规定,如果URL中的字符由字母、数字、“-”、“/”或者“_”组成,并且:1)不以“wp-”开头;2)无后缀或者后缀是”.html”,则将其由WordPress程序处理。因此,无论是对于以“wp-”打头的WordPress系统文件,还是上传的图片文件,就都不会出现不能正确返回原文件的情况了。

因为每个WordPress博客的固定链接可能并不相同,所以如果你想测试下这段规则是否适用于你的网站,不妨使用正则表达式验证工具测试下。我觉得中国站长站的正则验证工具(http://tool.chinaz.com/regex)就挺不错的。需要注意的是,在做正则验证时,路径应当从“/”写起,而不是从“http://”。比如我要验证的URL是“http://mawenjian.net/p/1270.html”,那么在下边的文本框中就应该填写“/p/1270.html”,而不是“http://mawenjian.net/p/1270.html”。


除非特殊说明,本博客文章均为原创,转载请以链接形式标明博文地址。

本文链接地址: 适用于阿里云ACE的WordPress Rewrite规则

分类:WordPress | 标签: |
    • 有钱买ECS,而且会自己配置服务器,基本没必要用ACE啦。反正服务器这东西,基本上配置一回就不用再管了。用ACE反而会多很多限制,最起码的,公网IP是公用的。

    • 目前还在测试中,所以现在方法还不能写。其实和正常搭建基本一致,因为ACE提供了文件同步到OSS的功能,可以免去附件上传的问题。不过存到OSS中的地址巨长,所以我还在考虑是否还是用同步插件进行同步。

    • 嗯,现在还不是太多,不过据说ACE 15年就要商用了,所以提前研究下也无妨。最近ACE的进步挺大的,支持域名绑定、支持文件同步到OSS、支持https访问等等,基本需求基本都能满足,所以我现在就在研究转移到ACE的可行性。一旦成熟了或者现在的虚拟主机出现故障了,可以立即迁移过去。

    • 没有到处搬的,现在用的还是万网的虚拟主机。注意我的措辞是“考虑”,也就是先考察一下可行性。前段时间我的虚拟主机负载较大,访问速度巨慢,所以我需要找一个升级版的方案,或者VPS或者XAE。VPS的价格还是有些高,配置也麻烦,所以就测试了下ACE,作为备选方案。
      阿里云的官方博客就放在ACE上面,所以稳定性应该不会太差,阿里不会自己打自己脸的。
      在ACE跑WordPress的话,还是需要稍微改动下源代码,和OSS、OCS配合使用,这样效果还能好一些。