我有一个网址重写的问题,这是我到目前为止所拥有的:
Options +FollowSymlinks
RewriteEngine on
RewriteRule \.(gif|png|jpg|css|js)$|^index\.php$ - [L]
RewriteRule ^users/(.+)$ /profile.php?userid=$1 [NC]
RewriteRule ^(.+)/(.+)$ /main.php?region=$1&place=$2 [NC]
基本上,如果url是mysite.com/users/username,我希望它使用profile.php,那么除了其他任何东西,还要转到main.php。
但是,使用该代码并不会按预期发生,它总是使用main.php。无论如何你可以在htaccess中使用if和elses,或类似的东西吗?
答案 0 :(得分:0)
您在第2和第3条规则中缺少L
标记。你的代码是这样的:
RewriteRule \.(gif|png|jpg|css|js)$|^index\.php$ - [L]
RewriteRule ^users/(.+)$ /profile.php?userid=$1 [NC,L,QSA]
RewriteRule ^(.+)/(.+)$ /main.php?region=$1&place=$2 [NC,L,QSA]