和洋風KAI

【nginx】「http」「https」「wwwあり」「wwwなし」のアドレスを1つにまとめるための「301リダイレクト」設定の俺用メモ。

Photo by: PROPierre

一体何を言っているのかわからないタイトルになってしまっていますが、自分用のためにメモしておきます。

さて以下のアドレスをみてください。

何も対策しないと全てのアドレスで同じページが表示されてしまいます。これだとSEO的にちょっとアレじゃないですか。

だから、これらのアドレスを下のアドレスに統一したい。

https://example.com

そんな場合のnginx.confの書き方をメモしておきます。

まず、「httpとhttpsのwwwありのアドレス」を「httpsのwwwなしのアドレス」にリダイレクトする処理を書きます。

server {
listen 80 default_server;
listen 443;
server_name www.example.com;
return 301 https://example.com$request_uri;
}

default_serverを必ず書いておくことを忘れずに。他の誰でもない。俺に言ってるんだぞ俺。

この処理を書いた後、httpsのwwwなし用のアドレスのための処理を書きます。

server {
listen 443;
server_name example.com;
ssl on;
以下略・・・。
}

こうすることで、全てのアドレスを一つのアドレスに統一できます。

ちなみに、「httpとhttpsのwwwなしのアドレス」を「httpsのwwwありのアドレス」に統一するためのリダイレクト処理はこう書きます。

server {
listen 80 default_server;
listen 443;
server_name example.com;
return 301 https://www.example.com$request_uri;
}
server {
listen 443;
server_name www.example.com;
ssl on;
以下略・・・。
}

以上、自分用メモでした。忘れるなよ俺。