0

メソッド get を使用した単純なフォームがあります

<form method="get" action="search.php">
<input type="text" name="category_name" value="cars">
<input type="text" name="location" value="newyork">
</form>

このリンクにリダイレクトします:

http://my-site.com/search.php?category_name=cars&location=newyork

次のような書き換えルールを作成します。

http://my-site.com/cars/newyork.html

私はこのコードを試してみましたが、うまくいきません:

RewriteEngine on
RewriteRule (.*)/(.*)\.html$ search.php?category_name=$1&location=$2 [R=301,L]
4

1 に答える 1

0

持っているルールを含めて、次のルールを追加してみてください。

RewriteCond %{THE_REQUEST} ^GET\ /search\.php\?category_name=([^&]+)&location=([^&\ ]+)
RewriteRule ^ /%1/%2.html? [L,R=301]

さらに、持っているルールにいくつかの条件を追加する必要がある場合があります。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)\.html$ search.php?category_name=$1&location=$2 [R=301,L]
于 2013-04-09T17:25:54.577 に答える