0

パラメータの数に基づいてリダイレクトするページを決定する htaccess に RewriteRule(s) を書いています。

たとえば、" http://mysite.com/tommy " は "mysite.com/user.php?user=tommy" にリダイレクトされます。

一方、「http://mysite.com/tommy/pets」は「mysite.com/show.php?user=tommy&category=pets」にリダイレクトされます。

最初の URL にはパラメーターが 1 つしかなく、user.php にリダイレクトされます。2 番目の URL には 2 つのパラメーターがあり、代わりに 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>
4

1 に答える 1

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]
于 2013-08-21T09:16:25.477 に答える