検索エンジンにとって、サイトにページの重複がないことは重要です。重複ページはコンテンツのランキングや検索エンジンのクローラーによるページの認識に悪影響を及ぼすためです。サイトを公開する際には、同一のページが異なるアドレスでアクセスできる場合のリンクのバリエーションを確認し、301リダイレクト(恒久的な移動)を使用してこれを修正する必要があります。ここでは、最も一般的な例を見てみましょう。
1. wwwプレフィックスを含むページにアクセスした際のリダイレクト設定。たとえば、https://www.domain.tld を https://domain.tld へリダイレクトするように設定します。
if ($host ~* ^www.domain.tld$) {
rewrite ^(.*)$ https://<mark>domain.tld$1 permanent;
}
2. URLの末尾にスラッシュ(/)がある場合のリダイレクト設定。たとえば、https://domain.tld/ を https://domain.tld へ、またはすべての他のページを https://domain.tld/my-page/ から https://domain.tld/my-page へリダイレクトします。
location ~ ^(.+)/$ {
return 301 $1$is_args$args;
}
3. 多くの場合、同一のページが https://domain.tld/ および https://domain.tld/index.php のアドレスでアクセス可能です。また、すべての他のページも同様に https://domain.tld/my-page と https://domain.tld/index.php/my-page の両方でアクセスできます。すべてのURLから index.php を削除します。
if ($request_uri ~* "^(.*/)index\.php(/?)(.*)") {
return 301 $1$3;
}
これらの設定は server {} ブロック内で適用する必要があります。変更を加えた後、次のコマンドでnginxサービスを再起動します:
service nginx restart