2015-08-21 76 views
0

我試圖改寫以下動態URI:的mod_rewrite規則(動態到靜態URI)不工作

http://domain.com/dictionary/?h=%E8%AF%91

要這樣:

http://domain.com/dictionary/%E8%AF%91

請注意,%E8%AF%91是漢字譯。

我使用下面的mod_rewrite在.htaccess:

RewriteEngine on 
RewriteRule ^dictionary/([^/\.]+)/?$ index.php?h=$1 

我也曾嘗試:

RewriteEngine on 
RewriteRule ^dictionary/([^/\.]+)/?$ dictionary/index.php?h=$1 

我不知道爲什麼它的工作。一些理論,我有:

  • 中國字符需要mod_rewrite的
  • 特定的解決方法
  • 的WordPress的重寫規則與礦

搞亂我已經確認並mod_rewrite的是絕對激活。

回答

0

我建議使用rewritecond對%{THE_REQUEST}進行捕獲,這會爲您提供例如URL中的原始客戶端編碼形式的URL。 %1。

然後,您應該發現將捕獲重新替換到新URL中會更容易。