共計 1038 個字符,預計需要花費 3 分鐘才能閱讀完成。
很多人都在用 wordpress 來做網站,而如果你網站主機使用的是 linux 系統,.htaccess 配置文件就發揮著重要的作用,URL 規范化,301 重定向,防盜鏈等等。
但是,不知道大家有沒有注意到,wordpress 的.htaccess 文件會經常被更改,我這里說的被更改并不是指網站被黑,或者是安裝插件導致.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
.htaccess 配置文件就發揮著重要的作用。但是不知道大家有沒有注意到,wordpress 的.htaccess 文件會經常被更改,我這里說的被更改并不是指網站被黑,或者是安裝插件導致.htaccess 改變,而是指.htaccess 不知不覺的還原成默認的。
我自己測試,只要你點擊了設置——固定連接,不管你有沒有修改什么,也不管你又沒有保存,只要點擊了“固定連接”,.htaccess 文件中# BEGIN WordPress 和# END WordPress 之間的內容就會被更改,自動還原。不知道這算不算是 wordpress 的一個 bug。
這個問題最好的解決方法是:把自己添加在.htaccess 中的語句,寫在# BEGIN WordPress 和# END WordPress 之外,如下:
# 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
RedirectRule 301 ^1.html $ 1.php