mod_rewrite
Apache で使用すると、奇妙な動作に遭遇しました。現在のRewriteRules
外観は次のとおりです。
RewriteRule ^(.*)/collections/(.*)/(.*)/?$ bootstrap.php?controller=category&user=$1&collection=$2&category=$3 [L]
RewriteRule ^(.*)/collections/(.*)/?$ bootstrap.php?controller=collection&user=$1&collection=$2 [L]
上記のルールに対する私の期待は、次のような URL にアクセスするとコントローラーに移動する必要がある一方でdomain.com/BenM/collections/0/1/
、コントローラーに移動する必要があるということです。category
domain.com/BenM/collections/0/
collection
現時点では、両方の URL 構造が に書き換えられbootstrap.php?controller=category...
ます。
私の理解では、[L]
フラグが指定されている場合、Apache はそれ以上検索せずに書き換えを実行します。
私はこれを打ち負かすことができないので、誰かがここで正しい方向を指し示すことができます...上で説明した機能を実現するために、書き換えはどのように見えるべきですか?