web-dev-qa-db-ja.com

同じサイトへのdomain.comとdomain.orgがあります。コンテンツの重複を避けるためにリダイレクトを使用する必要があります

可能性のある複製:
重複したコンテンツとは何ですか、自分のサイトでそのコンテンツにペナルティを科さないようにするにはどうすればよいですか?

ドメイン名に.comと.orgの両方があり、Apacheを使用して同じサイトコンテンツをポイントします。コンテンツが重複しているため、これが検索エンジンで問題を引き起こす可能性があると思います。 .orgを不可欠なWebサイトにしたい。他の人はこの状況にどのように対処しますか?

すべての.comリクエストを.orgに向けるために301リダイレクトを使用する必要がありますか?

各ページで.relを指すリンクrel = "canonical"を使用するだけですか?

6
bunzip

はい。comから.orgへの301パーマネントリダイレクトを使用する必要があります。そうしないと、Googleはドメインの1つに重複コンテンツをマークしますが、これは希望するものではありません。

次のコードで.htaccessファイルを作成します。domain.comに着信するすべてのリクエストがwww.domain.orgにリダイレクトされるようにします。htaccessファイルは、古いWebサイトのルートディレクトリに配置する必要があります(つまり、インデックスファイルが置かれている同じディレクトリ)

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_Host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.org/$1 [r=301,nc]

Domain.comとwww.newdomain.comを実際のドメイン名に置き換えてください。

注*このリダイレクトの.htaccessメソッドは、Apache Mod-Rewriteモジュールが有効になっているLinuxサーバーでのみ機能します。

お役に立てば幸いです。

6
Pheonix

@Pheonixによる優れた答えを拡張しました。

仮想ホストでApacheを使用しているので、これは特にそれに適用されます。

URLには、www.thisdomain.com、thisdomain.com、www.thisdomain.org、thisdomain.orgの4つのバリエーションがありました。決定的なものとしてthisdomain.orgを選択しました。 Apacheでvirtualhostエントリを分割したため、com用とorg用に1つのディレクトリがありました。すべてのPHPコードを組織に残し、com用の空のディレクトリを用意しました。 comディレクトリに、@ Pheonixが示唆するような.htaccessファイルを作成しました。 www.thisdomain.comとthisdomain.comがthisdomain.orgにリダイレクトされるように、少し拡張しました。

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{http_Host} ^thisdomain.com [NC]
RewriteRule ^(.*)$ http://thisdomain.org/$1 [R=301,NC,L]
RewriteCond %{http_Host} ^www.thisdomain.com [NC]
RewriteRule ^(.*)$ http://thisdomain.org/$1 [R=301,NC,L]

[OR]を使用し、2つのRewriteCond条件を組み合わせて、RewriteRuleを1つだけにすることで、おそらくこれを簡単に実現できます。

次に、組織のディレクトリに、次のような別の.htaccessファイルを追加しました。

RewriteEngine On
RewriteCond %{http_Host} ^www.thisdomain.org [NC]
RewriteRule ^(.*)$ http://thisdomain.org/$1 [R=301,NC,L]`

これにより、www.thisdomain.orgがthisdomain.orgにリダイレクトされます。そして今、4つのURLバリエーションはすべてthisdomain.orgに送られ、重複するコンテンツはありません。

1
bunzip