読者です 読者をやめる 読者になる 読者になる

Call of Venture ベンチャーの呼び声

スタートアップ企業で働く1人の若者。テック系スタートアップブログ。

ドメインのwww有無の統一。NGINXを使ったリダイレクト設定。

wwwありドメインとwwwなしドメインをどちらかに統一する方法を文字に起こしておきます。

www有り無しの統一意義

統一したほうがいい理由はいろいろとありますが、分けたままだとGoogleに別ページとしてインデックスされてしまいます。
たしか重複コンテンツ扱いになってしまい、サイト評価が下がるんだったと思います。良くないです。

ので、できるだけサービス初期にwwwはありかなしか、どちらかに統一しておきたいです。
今回は、wwwなしに統一します。Googleにインデックスされている数が多い方に揃えるといいでしょう。インデックス数はサーチコンソールをみると分かると思います。(詳しくは知らない)

めざす実装

wwwありドメインを、なしドメインに301リダイレクトします。
301リダイレクトにより、ありドメインへのページ評価を最大限引き継ぐことが出来ます。

実装手順

弊社ではWebサーバーとしてNginxを使っています。
Nginxの設定で、リダイレクトを行うことが出来ます。
Nginxの設定に関する詳しい説明はほかへ譲るとして、Nginxのconfファイルに以下のように記述しましょう。

    server {
         listen 80;
         server_name www.example.jp;
         return 301 http://example.jp$request_uri;
    }
    server {
        listen 80 default_server;
        server_name _;

#####その他の設定######

    }

注意する点は2点です。
- 下のserverブロックのlistenディレクティブに default_server を記載しておくこと。
- 下のserverブロックのserver_nameディレクティブを _ にしておくこと。

この2点を守らないと、開発中に意図しないリダイレクトが発生することがあります。
サーバーのテストなどで開発インスタンスIPアドレスでアクセスでしようとすると、本番のwwwなしドメインにリダイレクトしてしまう症状がありました。

参考: http://nginx.org/en/docs/http/server_names.html http://tengine.taobao.org/nginx_docs/ja/docs/http/request_processing.html http://nginx.org/en/docs/http/request_processing.html