htaccess RewriteRule用于个人资料网址

时间:2013-02-20 02:08:01

标签: .htaccess mod-rewrite url-rewriting rewrite

这是我的.htaccess:

RewriteEngine on
RewriteBase /site
RewriteCond %{request_filename} -f

RewriteRule ^(.*) $1 [L]
RewriteRule ^([a-z]+)(/([^/]{0,32})(/.+)?)?$  index.php?a=$1&u=$3    [L]

我试图以这种方式提供短网址 如果有人去www.mysite.com/johndoe htaccess将他/她发送到这个链接index.php?a = profile& u = johndoe 什么是最好的方法呢?我确实阅读了htaccess教程并尝试了不同的方法并且失败了:/

1 个答案:

答案 0 :(得分:-1)

尝试反转条件并删除重写基数:

RewriteEngine on

RewriteCond %{request_filename} !-f
RewriteCond %{request_filename} !-d
RewriteRule ^([^/]+)/?$  /index.php?a=profile&u=$1    [L]

这样就可以了:

  

如果有人访问www.mysite.com/johndoe

“johndoe”与^([^/]+)/?$匹配,并由$1反向引用,导致:

  

此链接index.php?a =个人资料& u = johndoe