ユーザーが入力したとき、またはURLに表示されるmod_rewriteを作成しようとしています。
www.example.com/var1/var2/var3/var4/
と同じ出力
www.example.com?page=var1&cat=var2&subcat=var3&subsubcat=var4
ただし、変数の数に変更があった場合でも機能するため、変数は次のようになります。
www.example.com/var1/
or
www.example.com/var1/var2/
or
www.example.com/var1/var2/var3/
or
www.example.com/var1/var2/var3/var4/
以下を使用すると、www.example.com / var1 / var2 / var3 / var4 /でのみ機能し、その他では機能しません。
Options +FollowSymLinks RewriteEngine On RewriteBase /
RewriteRule ^([^&]+)/([^&]*)/([^&]*)/([^&]*)/$ /?page=$1&cat=$2&subcat=$3&subsubcat=$4 [L]
CHAININGを使用して次のコードを使用すると、ある程度チェーンとして機能しますが、問題は
www.example.com/var1/var2/
www.example.com/var1/var2/var3/
www.example.com/var1/var2/var3/var4/
VAR1を「/」として出力するため、次のコードを使用して最初の変数を無視します。
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^([^&]+)/$ /?page=$1 [C]
RewriteRule ^([^&]+)/([^&]*)/$ /?page=$1&cat=$2 [C]
RewriteRule ^([^&]+)/([^&]*)/([^&]*)/$ /?page=$1&cat=$2&subcat=$3 [C]
RewriteRule ^([^&]+)/([^&]*)/([^&]*)/([^&]*)/$ /?page=$1&cat=$2&subcat=$3&subsubcat=$4 [L]
順序は常に同じなので、これは簡単なはずです。どうすればこれを機能させることができますか?