為什麼wordpress會出現404
常常會有wordpress使用者出現頁面開啟404的情況,這種情況主要是2個原因:偽靜態設定的問題;伺服器不支援中文連結導致。偽靜態的問題可以到wordpress後台設置-固定連結進行設置,如果依然不行的話可以聯絡伺服器管理員。
WordPress中文連結在某些伺服器上面也會出現404的情況,大部分是在windows系統的伺服器(所以我們非常不建議使用windows伺服器,坑比較多)。
解決這個問題我們建議在固定連結的設定上可以不要選擇文章名字的方式,可以選擇使用ID,另外頁面、分類、標籤手動修改別名為英文字母數字等。
比較麻煩的就是標籤,由於標籤的數量會比較多,而且不定期會增加,手動修改會比較麻煩,這裡推薦幾個插件,可以解決這個問題:Auto Tag Slug、IIS Chinese Tag Permalink。
以上為使用插件的方式,但是由於這兩個插件都是好多年都未更新了,所以這裡再給出一種修改程式碼的方式(修改程式碼會被新版本覆蓋,請每次更新留意這個問題)。進入wp-includes目錄,找到class-wp.php文件,在第178行和182行找到以下程式碼:
將178行修改為:
$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? mb_convert_encoding($_SERVER['PATH_INFO'],'utf-8', 'GBK') : '';
將182行修改為:
list( $req_uri ) = explode( '?', mb_convert_encoding($_SERVER['REQUEST_URI'], 'utf-8','GBK') );
注意修改的時候使用專業的程式碼編輯工具,例如:Dreamweaver、sublime text、notepad 。
更多WordPress技術文章,請造訪WordPress教學專欄!
以上是為什麼wordpress會出現404的詳細內容。更多資訊請關注PHP中文網其他相關文章!