首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

Destoon 服務器遷移後中文搜尋亂碼解決:.htaccess 開啟 NU 標記保留 Unicode 編碼

     編輯:PHP 綜合知識

問題現象

GBK 編碼的 Destoon 站點遷移服務器後,搜尋數字/英文正常,但搜尋漢字出現亂碼或方框符號。

根因

Apache Rewrite 重寫過程中,將 Unicode 字符自動轉換為 UTF-8,導致 GBK 環境下解碼錯誤。

解決方案:修改 .htaccess RewriteRule

找到原規則:

RewriteRule ^(.*)-htm-(.*)$ $1.php?$2

修改為帶 [NU] 標記:

RewriteRule ^(.*)-htm-(.*)$ $1.php?$2 [NU]

原理解析

NU (No Unicode conversion) 標記: 指示 Apache 不將 Unicode 字符轉換為 UTF-8,保持原始 %xx 編碼格式傳遞。GBK 環境下即可正確接收並解析中文參數,徹底解決搜尋亂碼。

同理,所有涉及中文參數傳遞的 RewriteRule 均建議加上 [NU] 以兼容 GBK 編碼站點。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved