0
の置換文字列から部品を取り込みありません。はなぜ私のRewriteRuleはこのURLを考える代わりに、URI
http://test.com/app/myfile.php?product/1
と私はオンラインのhtaccessテスターを使用しています。しかし私のローカル開発環境では、私はこれを得る:
要求されたURL /app/app.phpは、このサーバ上に見つかりませんでした。
なぜですか?これは正しいことができません、そうですか?私はそれが私のセットアップ(ドッカーのコンテナとdinghy - http - プロキシ)によって引き起こされたバグだと思うが、私はこの書き直しに新しいので、わからない。問題は、正規表現がパス文字列のどこにでもマッチすることができるということで、/はオプションであるため、結果はあなたが望むものになることはほとんどありません
RewriteRule ^([^/.]+)/?(.*) app/$1.php?$2
:
ありがとうございますが、これは私には同じ結果をもたらします。 – sanderdev
@sanderdev私の編集を参照してください - 複数のルールがある場合、別のルールの結果を書き換えるかもしれません。 – Lucero
私が得意でないのは、これがURLで使われていないと$ 1に "app"が含まれていることです。一致する場合は、 "myfile/product/1"という文字列の内容を含める必要がありますか?しかし、今私は本当に理解していない置換文字列から何かを含んでいます。 – sanderdev