導讀:昨天自己做了一個 WordPress 的微博, 我就為了最佳化把路徑改成了偽靜態, 之後就出現了 WordPress 靜態化後中文 tag 連結找不到, 進入 404 介面, 無法開啟...

昨天自己做了一個 WordPress 的微博, 我就為了最佳化把路徑改成了偽靜態, 之後就出現了 WordPress 靜態化後中文 tag 連結找不到, 進入 404 介面, 無法開啟, 後來找到了解決辦法。

具體步驟如下:

修改網站 /wp-includes/class-wp.php 中如下程式碼:

  1. if ( isset($_SERVER['PATH_INFO']) ) 
  2. $pathinfo = $_SERVER['PATH_INFO']; 
  3. else
  4. $pathinfo = ''
  5. $pathinfo_array = explode('?'$pathinfo); 
  6. $pathinfo = str_replace("%""%25"$pathinfo_array[0]); 
  7. $req_uri = $_SERVER['REQUEST_URI']; 
  8. if ( isset($_SERVER['PATH_INFO']) ) 
  9. $pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], 'utf-8''GBK');
  10. else
  11. $pathinfo = 」; 
  12. $pathinfo_array = explode('?'$pathinfo); 
  13. $pathinfo = str_replace("%""%25"$pathinfo_array[0]); 
  14. $req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], 'utf-8''GBK'); 

即可, 其實我們總結一下就是:

查詢:$pathinfo = $_SERVER['PATH_INFO'];

修改為:$pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'],「UTF-8″, 「GBK」);

再查詢:$req_uri = $_SERVER['REQUEST_URI'];

修改為:$req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'],「UTF-8″, 「GBK」); 即可了.