我需要使用 mod_rewrite 完成以下任务:
URI request: http://domain.com/user/username/ or http://domain.com/user/username
URI translate: http://domain.com/?q=user/username
这需要非常具体,不能使用通配符。mod_rewrite 和正则表达式方面的专家能帮忙吗?谢谢!
答案1
我认为您忘记了 [az] 后面的 +:
RewriteRule ^user/([a-z]+)$ /?q=user/$1 [L]
我在我的服务器上尝试过并且成功了。
答案2
我试过:
RewriteRule ^user/[a-z]$ /?q=user/$1
但它不起作用。戴夫·德拉格,我正在寻找一个更干净的版本(不确定您的方法是否有效,但宁愿不创建目录,而是希望全部来自 .htaccess)。