自從百度 BAE 開放給公眾開發者使用以來,相信有不少 WordPress 粉絲將其部落格遷移到 BAE 上,但是在百度 BAE 上實現 WordPress 的 偽靜態和固定連結的方法與獨立主機的方法不相同,不能透過 WP 後臺的簡單設定實現。固定的文章連結對於一個部落格來說是比較重要的,偽靜態有利於搜尋引擎優 化,如果連結的格式若不盡早確定,日後再想改變將是一件非常麻煩的事情。

雖然百度 BAE 官方客服說 BAE 暫時不支援偽靜態,但是我們從官方的 BAE 幫助檔案中還是可以找到實現 WordPress 偽靜態和固定連結的方法。 BAE 的程式配置資訊中有一項 url 配置功能,這是類似睦 url rewrite 的功能。這個功能將符合匹配規則的 url 重寫到指定的指令碼處理。 Rewrite 規則可以配置多條。順序是從上往下依次匹配,遇到第一個匹配 成功的即結束配置過程。另外, 並不需要請求的 uri 完全匹配指定的正則,只要其中有部分內容匹配即可。例如:

既然 BAE 有類似 url rewrite 的功能那麼我們應該就可以實現 WordPress 的偽靜態和固定連結功能了。下面我將詳細教大家如何實現:

1 、首先登陸到百度開發者平臺,在 「管理中心」 開啟一個你的 WordPress 應用,然後依次開啟 「高階」-「配置」,如下圖:

2 、第二步,在開啟的 「程式配置資訊」 中,點選 「新增」 規則。例如:

需要注意的是,新增完成後一定要點選儲存,這樣才能正式生效。

完整配置資訊如下:

對於以上規則,系統是從上往下依次生效的,因此順序也很重要。對於以上規則的一些說明:

我們看到其中有一條/archives/.*.html 這樣的規則,這個規則很重要。我看到有些人說使用/.*/.*.html 這樣的規則,其實這 是不對的。至少對於在使用百度 UEitor 編輯器的 WordPress 上是不對的,會導致無法在編輯器中上傳圖片等錯誤。如果你的固定連結使用的是 /archives/%postname%.html 這樣的結構,那麼你就必須使用/archives/.*.html 這樣的 BAE url 規則。

另外,大家也看到有/aboutme 和/weibo 這樣的兩條規則,這是針對單頁的。 aboutme 和 weibo 分別是我兩個單頁固定連結的名字。如果你新增了單頁,那麼你需要將單頁的固定連結名字新增到 url 規則中。