「デフォルト」の書き換えルールを設定して、以前の書き換えエントリと一致しなかったものをすべてキャッチしたいと考えています。私はこれを試しました:
RewriteRule ^(.*)/?$ index.php?url=$1 [L]
しかし、返される出力は次のとおりです。
url = index.php
理想的には、すべての GET 値を「url」にアタッチして、Web ログに保存することです。これを解決する方法はありますか?
「デフォルト」の書き換えルールを設定して、以前の書き換えエントリと一致しなかったものをすべてキャッチしたいと考えています。私はこれを試しました:
RewriteRule ^(.*)/?$ index.php?url=$1 [L]
しかし、返される出力は次のとおりです。
url = index.php
理想的には、すべての GET 値を「url」にアタッチして、Web ログに保存することです。これを解決する方法はありますか?
ルールから宛先を除外する必要があります。
RewriteCond $1 !=index.php
RewriteRule ^(.*)/?$ index.php?url=$1 [L]
可能な場合は常に、正規表現の不要な括弧を省略してください。
RewriteRule .* index.php?url=$0 [L]
「index.php」を除外する場合:
RewriteRule ^(?!index\.php).* index.php?url=$0 [L]
スラッシュを削除してみてください:
RewriteRule ^(.*)$ index.php?url=$1 [L]