URL百分比编码不起作用
问题描述:
我想做一个有点简单的事情,没有运气 - 我想在我的URL中显示希伯来文/阿拉伯字符。URL百分比编码不起作用
例如:我想要的网址显示一个文件名为:aאm.php
所以我百分之编码中间UTF8字符,结果是:a%D7%90m.php
。我上传a%D7%90m.php
到我的服务器(Apache)的,并试图要求的网页www.example.com/a%D7%90m.php & www.example.com/aאm.php但我的服务器响应:
在此服务器上未找到请求的网址
/a%D7%90m.php
。
所以我浏览www.example.com/a%D7%90m.php & www.example.com/aאm.php当试图上传aאm.php
(不百分号编码)来代替,但同样没有运气。
如何解决这个问题?
答
解决的办法是在www.example.com上设置一个mod重写.htaccess
。例如,如果您想让您的链接为www.example.com/عربية并将www.example.com/arabic.php文件实际处理后台请求,那么只需在.htaccess
文件中编写此代码:
RewriteEngine
OnRewriteRule ^عربية$ arabic.php
一个值得尝试的技巧可能是激活“DirectoryIndex”并查看Apache本身在该页面上提供的网址 – 2011-02-11 00:05:15
感谢Pekka。它会看到一个%25D7%2590m.php(每一个百分比都增加了一个25),为什么?我怎样才能解决这个问题? – Tom 2011-02-11 00:08:06