簡體   English   中英

Apache和Japanase網站重寫模塊

[英]Apache and Japanase website re-write module

我曾經在一個多語言網站上工作,在接下來的幾個月中,我們添加了韓語,現在又添加了日語。 除了它在日志文件上生成大量404錯誤列表的事實之外,URL還有另一個問題。 當我插入以下URL時,Apache服務器的響應帶有錯誤請求:

學校 - 詳細な評価-11

#[.htaccess]
RewriteRule ^學校-詳細な評価-(.+)$ /statistics.php?n=$1 [L]

我也嘗試使用[B]標志,但沒有任何變化。

我也嘗試過刪除字符,但發現只有通過這種方式,它才能起作用:

#[.htaccess]
RewriteRule ^學-(.+)$ /statistics.php?n=$1 [L]

但是,我當然不能以這種方式避免問題:D

我注意到Apache會將URL轉換為:%E5%AD%A6%E6%A0%A1-%E8%A9%B3%E7%B4%B0%E3%81%AA%E8%A9%95%E4% BE%A1-11

然后我也嘗試了:

#[.htaccess]
RewriteRule ^%E5%AD%A6%E6%A0%A1-%E8%A9%B3%E7%B4%B0%E3%81%AA%E8%A9%95%E4%BE%A1-(.+)$ /statistics.php?n=$1 [L]

但是我仍然有問題:(

有誰知道如何解決它或為什么會這樣? 我進行了一項研究,但所有論壇和網站僅建議在URL末尾使用標記B。

歡迎任何幫助! 謝謝 :)

嘗試使用十六進制:

RewriteRule ^\xE5\xAD\xA6\xE6\xA0\xA1-\xE8\xA9\xB3\xE7\xB4\xB0\xE3\x81\xAA\xE8\xA9\x95\xE4\‌​xBE\xA1-(.+)$ /statistics.php?n=$1 [L]

例如,具有以下規則:

RewriteRule ^\\xE5\\xAD\\xA6-(.+)$ /statistics.php [L]

該網址http://domain.com/學-t將重定向到http://domain.com/statistics.php

要進行測試,您可以使用在線htaccess測試儀: http//htaccess.madewithlove.be/,記住在測試之前將頁面編碼更改為UTF-8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM