0

.htaccess現在、いくつかの URL を mod_rewrite するようにファイルを変更しています。私はいくつかの読書をして、次のことを思いつきました。

RewriteCond %{HTTP_HOST} ^(www\.)?foobar\.net [NC,OR]
RewriteCond %{HTTP_HOST} ^foobar\.com [NC,OR]
RewriteCond %{HTTP_HOST} ^shop\.foobar\.com [NC]
RewriteRule ^(.*)$ http://www.foobar.com/$1 [R=301,NC,L]

したがって、私の質問は、末尾の URL を維持しながら、次のドメインを www.foobar.com にリダイレクトするのに上記で十分かということです (例: www.foobar.net/booya は www.foobar.com/booya に移動する必要があります)。

  • www.foobar.net
  • foob​​ar.net
  • foob​​ar.com
  • shop.foobar.com
4

1 に答える 1

1

はい、実際には、他の独立したドメインではなくそれらのドメインにサービスを提供しており、新しい foobar.com が別のサーバーにある場合は、それらを削除するだけで済みますRewriteCond

一方、同じサーバーで新しいドメインを提供していて、他のすべての可能なドメインをリダイレクトしたいwww.foobar.com場合 (これはあなたのケースかもしれません)、代わりに試すことができます:

RewriteCond %{HTTP_HOST} !(^www\.foobar\.com) [NC]
RewriteRule ^(.*)$ http://www.foobar.com/$1 [R=301,NC,L]

そうすれば、他のドメインをリダイレクトするのを忘れる心配はありません。

于 2013-07-25T04:51:00.503 に答える