0

mod_rewrite を使用してデータベースから結果を取得する 1 行のコードがあります。

example.com/anytext/itemid 次の URL を使用します。example.com/item.php?id=itemid

簡単な書き直し。しかし、それを上回るルールを作りたい。フォローして、私が何を意味するかを確認してください。

.htaccess ファイルの例:

RewriteRule ^products/[^/]+/(.*)$    products/item.php?id=$1 [L]

このルールは、アイテム ID である「/」の後の URL の最後の部分をexample.com/products/anytext/itemid 使用して表示するように指示します。item.php

ただし、一部の URL を書き換えるのではなくリダイレ​​クトする必要があります。例えば:

products/green-dress/4023なる:

products/green-dress-with-stain/4023 書き換えルールが開始されることなく!

今、.htaccess で単純な 301 リダイレクトを試みましたが、何らかの形で書き換えルールに干渉します。

に行く代わりに

products/green-dress-with-stain/4023次の場所に移動します。

products/green-dress-with-stain4023?id=4023

末尾の URL がどのように変数を取得するかがわかりますか? 変!

ありがとう、デイブ

4

1 に答える 1

0

ファイル内のルールは.htaccess順番に実行されるため、1つのルールを他のルールよりも優先する必要がある場合は、ファイルの最初にルールを配置するだけです。

于 2013-02-06T21:57:58.710 に答える