轉載自:http://www.budeyan.com/tech_notes/wordpress3-1-cuowu/
不得言一個新想法,就把堅持三年的因精力不再打理的老村長部落格,做了簡單的備份後徹底地刪除了——真實作孽。當我即將要將利用此網域名稱並藉助朋友的協助“大展宏圖”時,沒想到出師未捷身先死,大字還沒有一橫的時候,卻出了一個丈二和尚摸不著頭腦的問題。
因對Wordpress部落格較為熟悉,它友好的所見即所得 (WYSIWYG)編輯器成了平台的最佳選擇。但在安裝Wordpress3.1時出了問題,後台操作、資料庫等一切正常,首頁IE無法開啟,用Firefox出現迴圈重新導向錯誤提示。
如右,在Firefox中開啟網域名稱時,經過幾十秒的等待出現下面錯誤。我嘗試通過清理Cookie、重啟IIS、重裝Wordpress3.1等都沒能解決。
- 此頁面重新導向不正確
- Firefox 檢測到該伺服器正在將此地址的請求迴圈重新導向。
- 此問題可能是因為禁用或拒絕 Cookie 導致。
WordPress3.1迴圈重新導向錯誤猜想
我想到了一個問題。開啟Wordpress部落格時,程式會檢測wp-config.php檔案是否存在。如果存在將嘗試根據設定檔調用資料庫,顯示網站——排除其他因素,這是網站能正常開啟;如果沒有,則跳轉到安裝提示頁,安裝完畢後,方可正常訪問。
我的擦想:問題極可能出現在這裡,Wordpress是否會設定一個參數X,用於確定安裝是否完畢。值為1表示已安裝;值為0表示未安裝或因其他原因需重新安裝。預設X為0,成功安裝後X變成1,同時把安裝頁設定跳轉到首頁。
問題來了,如果0變1失敗(比如說因為檔案寫入錯誤),訪問時,X為0於是系統跳轉到安裝頁提示使用者安裝,,但這時安裝頁是被設定跳轉到首頁的。於是你推給我我推給你。在這來回折騰中,Firefox不耐煩了,惱了,給使用者迴圈重新導向錯誤提示。
很遺憾,這種辦法我無法確定是否真實——通過對比安裝成功的部落格檔案,我沒能把猜想變為現實。附不得言從網上查到的資料:
WordPress3.1迴圈重新導向錯誤解決辦法
Anando給出了兩種解決辦法。分別是修改wp-include下的/template-loader.php檔案或canonical.php檔案。修改起來並不複雜,缺點是核心檔案改動,以後升級務必注意。官方沒有給出解決辦法,於是只好採用這個辦法。
迴圈重新導向解決方案一
禁用上面代碼,解決迴圈重新導向錯誤
找到wp-include檔案夾下的template-loader.php檔案,使用/**代碼**/注釋掉第六行和第七行。
1 |
if ( defined('WP_USE_THEMES') && WP_USE_THEMES ) |
2 |
do_action('template_redirect'); |
迴圈重新導向解決方案二
通過給do_redirect賦值解決wordpress迴圈重新導向
找到wp-include檔案夾下的canonical.php檔案,使用//注釋掉第37行。另起一行加入下面代碼。其實也就是把變數$do_redirect的值修改為false。
1 |
function redirect_canonical( $requested_url = null,$do_redirect = false ) { |
迴圈重新導向解決方案三
找到您的當前主題檔案夾下的functions.php檔案,在最後加上下面一行代碼:
1 |
remove_filter('template_redirect', 'redirect_canonical'); |
迴圈重新導向解決方案四
外掛程式辦法,下載Permalink Fix & Disable Canonical Redirects Pack安裝上就ok。