關於 WordPress 管理後台出現產生過多重定向問題,筆者昨天第一次遇到。具體表現是管理員及用户無法登錄後台,貌似出現了無限循環或根本無法跳轉。我們都知道在用户沒有登錄的時候,你輸入登錄如你的域名/wp-admin 或 wp-login.php 時,只有用户名和密碼正確,就會重定向到 worpress 後台 (默認情況下),但是筆者接觸到一個網站的情況是下面的情況如圖 (谷歌瀏覽器瀏覽):

wp-admin-redrect

這個問題顯然阻止了 WordPress 的重定向繼續執行。經過一番搜索及分析,下面幾點值得大家參考:

一、對於網站遷移最容易出現這個問題

如果你是對網站遷移如從一個服務器遷移到另一個服務器並且域名不同的話,而遷移完後,原來的服務器解析停止,那麼這個問題的出現極大可能是你的網站域名及站點地址沒有正確的修改導致的。或者從本地遷移到服務器也會出現這個問題。解決辦法就是登錄數據庫,找到 wp_options->option_name 裏,修改現在的域名即可。

二、過期的插件導致的

在 WordPress 插件庫裏,有很多不再更新的插件,隨着 WordPress 版本的不斷升級,很多插件都沒有及時的跟進。從而導致 WordPress 後台出現了重定向的問題。這個解決辦法是通過 ftp 登錄網站安裝目錄,進入插件目錄,把插件目錄重命名,然後新建一個插件目錄,名字後以前的目錄名一樣,只不過裏面是空的。這時你一般就可以登錄了。然後依次啓用插件,排查問題。

三、全新安裝的 WordPress 為什麼也會有這個問題

筆者遇到的就是全新安裝的 WordPress,但是也出現了這個問題。這有點讓人費解。但是這可以肯定的告訴各位,這是服務器配置導致的。實際上這不僅僅限於 WordPress,其它的網站系統也遇到這個問題。有人分析的服務器防火牆錯判,或服務器安全配置太高等。不管什麼原因,如果沒有服務器的權限,要從服務器本身去解決問題,是比較難的。下面提供兩個方法:

1 、修改 wp-config.php 文件

從瀏覽器的判斷來看,是 Cookie 問題,所以從這個角度來解決。打開 wp-config.php 文件,添加下面的幾行代碼:

define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', ");
define('COOKIEPATH', ");
define('SITECOOKIEPATH', ");

保存後測試看看。

2 、修改.htaccess 文件

通過 ftp 鏈接登錄,右擊編輯,在 # BEGIN WordPress line 上面,添加下面的代碼:

ErrorDocument 401 default

保存後測試看看。

一般情況下,通過上述方法都能解決問題。