我在htaccess上写了RewriteRule,它根据参数的数量决定它重定向到哪个页面。
例如,“http://mysite.com/tommy” 这将重定向到“mysite.com/user.php?user=tommy”
然而,“http://mysite.com/tommy/pets” 将重定向到“mysite.com/show.php?user=tommy&category=pets”
请注意,第一个网址只有一个参数,重定向到user.php,第二个网址有两个参数,然后重定向到show.php。
请帮助,并提前感谢!
目前...
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([^/]*)/?(.*)$ category.php?userId=$1&category=$2 [QSA,L]
RewriteRule ^(.*)$ user.php?userId=$1 [QSA,L]
</IfModule>
答案 0 :(得分:0)
完成,对于其他需要这个的人来说......
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([a-zA-Z0-9_-]+)$ user.php?userId=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ user.php?userId=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ category.php?userId=$1&category=$2 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ category.php?userId=$1&category=$2 [L]