2

私はURLの書き換えに本当に慣れていないので、正規表現に完全に慣れていないので、質問がばかげている場合は申し訳ありません(主題を完全に理解していないため)

ここに私の書き換えルールがあります

RewriteRule ^trends/conversion/([_a-zA-Z0-9-]*) trends/conversion.php?$1

RewriteRule ^trends/([_a-zA-Z0-9-]*)$ trends/index.php?$1

もちろん、2 番目のルールを削除しない限り、基本的に常に index.php ページに行き着きます。mod の書き換えが conversion.php に到達したらすぐに停止するようにすることはできますか?

前もって感謝します

ファビオ

ps両方のページのクエリ文字列をターゲットにする必要があることを忘れていました。そのため、2番目のページにも正規表現があります。残念ながら、この URL 構造を変更することはできません。

4

1 に答える 1

1

L最初のルールにフラグを追加RewriteCondし、2 番目のルールに a を追加して、conversion.php再度書き換えられないようにする必要があります。

RewriteRule ^trends/conversion/([_a-zA-Z0-9-]*) trends/conversion.php?$1 [L]

RewriteCond %{REQUEST_URI} !conversion\.php
RewriteRule ^trends/([_a-zA-Z0-9-]*)$ trends/index.php?$1 [L]

クエリ文字列をid=$1似たようなものに変更することを検討する必要があります。それ以外の場合は、すべてのリクエストで同じGETパラメーターを使用するのではなく、任意の文字列を使用します。

于 2013-03-12T15:52:19.980 に答える