不知道大家有沒有留意到,WordPress 的.htaccess 檔案會常常被更改,.htaccess 檔案在我們修改後會不知不覺的還原成預設的。
大家知道,在 linux 系統上安裝完成了 WordPress,並且在後臺設定了偽靜態的 「固定連線」 之後,會自動生成一個包含如下內容的.htaccess 檔案:
|
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase/ RewriteRule^index.php$–[L] RewriteCond%{REQUEST_FILENAME}!-f RewriteCond%{REQUEST_FILENAME}!-d RewriteRule./index.php[L] </IfModule> # END WordPress |
我的固定連線用的是 「/%postname%.html」 這樣的 URL 結構,所以你看見的文章後面都是.html 結尾,然而在.html 後面加上一個 「/」 斜槓也可以訪問,這樣可能會對搜尋引擎不利,所以我就在.htaccess 配置檔案中加入了一句 301 重定向,如下:
|
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase/ RewriteRule^(.*).html/$$1.html[L,R=301] RewriteRule^index.php$–[L] RewriteCond%{REQUEST_FILENAME}!-f RewriteCond%{REQUEST_FILENAME}!-d RewriteRule./index.php[L] </IfModule> # END WordPress |
後來發現只要你點選了設定——固定連線,不管你有沒有修改什麼,也不管你又沒有儲存,只要點選了 「固定連線」,.htaccess 檔案中 # BEGIN WordPress 和 # END WordPress 之間的內容就會被更改,自動還原。
所以解決辦法是將自己新增的部分加到 # BEGIN WordPress 和 # END WordPress 意外即可,這樣就是他恢復預設也沒有關係了。