0

現在、カテゴリを移動 (マージ) しています。子製品は存在しなくなります。かなりの数の製品があるため、すべての製品を親カテゴリの下にリダイレクトすることは理にかなっています.

URL の例:

http://www.domain.com/chandeliers/modern-chandeliers/*

('*' = 子製品/URL)

リダイレクト URL:

http://www.domain.com/chandeliers/

現在の表示:

RewriteCond %{HTTP_HOST} ^.*$
RewriteRule ^chandeliers\/modern-chandeliers\/$ "http\:\/\/www\.domain\.com\/chandeliers\/" [R=301,L]
4

1 に答える 1

0

ルールを次のように変更します。

RewriteRule ^chandeliers/modern-chandeliers/ http://www.domain.com/chandeliers/ [R=301,L]

$までしか一致させたくないので、 は削除されましたmodern-chandeliers/。また、引用符と不要なエスケープを削除しました。何にも影響しないので、 も必要ありRewriteCondません。これにより、誰かが にhttp://www.domain.com/chandeliers/modern-chandeliers/a-product-uriアクセスするとhttp://www.domain.com/chandeliers/modern-chandeliers/. の後のすべても含めたい場合はmodern-chandeliers/、ルールを次のようにする必要があります。

RewriteRule ^chandeliers/modern-chandeliers/(.*)$ http://www.domain.com/chandeliers/$1 [R=301,L]

これにより、誰かが をリクエストするhttp://www.domain.com/chandeliers/modern-chandeliers/a-product-uriと、 にリダイレクトされhttp://www.domain.com/chandeliers/a-product-uriます。

あるいは、mod_rewrite を捨てて mod_alias を使用することもできます:

Redirect 301 /chandeliers/modern-chandeliers /chandeliers
于 2012-07-27T18:20:59.803 に答える