私はホストを移動しています。新しいサイト(同じドメイン名)がWordpressで実行されると、URL構造が変更されます。
ページ名の最初の部分が同じで、新しいサイトの1つのページにすべてリダイレクトする必要があるURLがたくさんあります。例えば。
http://www.example.com/binfet-timeinthepark.htm
http://www.example.com/binfet-backtothecity.htm
http://www.example.com/binfet-justmeetmehalfway.htm
すべてに行く必要があります:
http://www.example.com/bev-binfet/
これらすべてをキャプチャするルールを作成する方法はありますか?約50の異なるケースがあります。この例では、「binfet」は先頭にありますが、約50の異なる名前です。
更新
@Fayazに応えて
URLが同じ名前で始まり、その後に異なる終わりがある約50のケースがあります。各ケースについて、そのケースのすべてのURLは単一の新しいページに移動します。
例えば。
http://www.example.com/xyz-sometext.htm http://www.example.com/xyz-someothertext.htm
...すべてが1つの新しいURLに移動します
http://www.example.com/xyznewplace/
RewriteRule
で完全なURLを使用することをお勧めします。
したがって、binfet
で始まるすべてのURLが/bev-binfet/
に移動するには、.htaccess
ファイルに次のディレクティブを追加する必要があります(他の書き換えルールの前)。
RewriteRule ^binfet http://www.example.com/bev-binfet/ [R=301,L]
ほとんどの場合、non-www
リンクをwww
リンクにリダイレクトする他のルールがあります。そのため、完全なURLを使用すると、追加のリダイレクトが回避されます。たとえば、誰かがアクセスしようとします:
http://example.com/binfet-timeinthepark.htm
RewriteRule
に完全なURLがない場合、最初にリダイレクトされます:
http://example.com/bev-binfet/
そして最後に:
http://www.example.com/bev-binfet/
ここで説明したソリューションを使用すると、最初のリダイレクトを回避し、次の場所に直接移動できます。
http://www.example.com/bev-binfet/
何らかの理由で、あなたの質問にはもっと多くのことがあると思います。あなたが言った:
約50の異なるケースがあります。この例では、「binfet」は先頭にありますが、約50の異なる名前です。
A。 URLが特定のフレーズ(たとえばbinfet
)で始まるURLが50個あるということですか?
or
B。このような開始フレーズは50個あり(binfet
で始まるURLの1つのグループ、xyz
で始まるURLの別のグループなど)、各グループは終了します一意のURLに追加しますか?
Aの場合、ここで指定した解決策で十分です。ただし、Bの場合、各開始フレーズに対してこのルールを50回記述するか、すべてのフレーズをカバーできるより良いパターンを見つける必要があります。
Bの場合は、質問を詳細に更新してください。
この例では、「binfet」は先頭にありますが、約50の異なる名前です。
binfet
で始まるすべてのURLをリダイレクトするには、次のmod_rewriteディレクティブを試してくださいbefore.htaccess
ファイル内の既存のWPディレクティブ:
RewriteRule ^binfet /bev-binfet/ [R=301,L]