在.htaccess中使用空格,非拉丁字符等? 例如如何解决这个问题:如何在.htaccess文件中使用空格和非ascii字符
RewriteRule ^/(.*)/new user/(.*)$ /page/?id=$1 [QSA,L,E]
这个决定是不是我:
... /new_user/ ...
感谢
在.htaccess中使用空格,非拉丁字符等? 例如如何解决这个问题:如何在.htaccess文件中使用空格和非ascii字符
RewriteRule ^/(.*)/new user/(.*)$ /page/?id=$1 [QSA,L,E]
这个决定是不是我:
... /new_user/ ...
感谢
你有percent-各自的字符代码,以逃避的URI保留字符编码,例如, G。 %20
的空间。
OK ..在URL允许体征: http://www.blooberry.com/indexdot/html/topics/urlencoding.htm 和htaccess的:
RewriteRule ^(([0-9]+)-)?new_user(-([0-9]+))?/?$ new_user.php?page=$2&id=$4 [L]
变化www.blabla.com/10-new_user-5
到www.blabla.com/new_user.php?page=10&id=5
的URL自动解码之前您的规则操作就可以了,所以你可以测试字面上的字符,例如français\ español
(注意,除非引用模式,否则您需要使用反斜杠转义字面空格)。
然而,根据你的榜样,我觉得您的实际关注的是能够做这样的事:
RewriteRule ^([^/]+)/[^/]+/.*$ /page/?id=$1 [QSA,L]
# ^---^
# it doesn't matter what the user name is, as long as it
# doesn't contain a slash
我看到你只是提供了一个例子,但我最后一次检查,空间是一个ASCII字符=) – mkoistinen 2010-09-22 12:11:12
授予。我已经纠正了答案。 ;) – joschi 2010-09-22 12:39:54