🐘

Studioとさくらインターネットでwwwあり・なしを統一する

2022/08/08に公開

注意事項

とりあえず私の環境では動きましたが、著者はStudio・さくらともに初心者なので何も保証できません。Studio公式の案内通り、Google Domainを使うのが賢明です。

TL;DR

  • CNAMEでwwwありをなしに転送する方法はStudioには効かない
  • さくらのレンタルサーバでドメイン設定からwww.転送設定をする
  • HTTPSでのアクセスのために、さくらの設定完了後にwww.をStudioのIPアドレスに差し替える

完成図

※ドメイン hiroga-sakura.net は適宜読み替えて下さい。

アーキテクチャ

DNS設定

DNS設定

前提

StudioでホストされるサイトのIPアドレスは、全て 35.194.122.208 です。
にも関わらずどうやってサイトを出し分けているかというと、おそらく :authority ヘッダーを見ているものと推測されます(違ったら教えてください)

したがって CNAMEによってwww.あり・なしを統一する方法だと、 :authority ヘッダーが変わらない(&2022-08-07現在、Studioはカスタムドメインを1つしか設定できない)ことからうまく行きません。
よってHTTPサーバーでリダイレクトを返す必要があります。

手順

  1. さくらのレンタルサーバでドメインの設定をする
  2. Studioとさくらのドメインでwww.ありのURLを設定する
  3. www.なしをありに転送する

1. さくらのレンタルサーバでドメインの設定をする

さくらのレンタルサーバでドメイン/SSLを開きます。

まず、「www.が付与されたサブドメインも利用する」のチェックを外します。
www.が付与されたサブドメインも利用する

次にSSLを設定します。SSL証明書の利用種類は "Let's Encrypt" を選択しました。
SSL証明書の利用種類を選択

なお、SSL登録でエラーが表示されることがあります。私の場合、原因は以下のいずれかでした。

  • www.が付与されたサブドメインも利用する がチェックされており、かつwww.が付与されたサブドメインのAレコードがさくらのレンタルサーバではなかった
  • ドメイン(今回は hiroga-sakura.net)のAレコードがさくらのレンタルサーバではなかった

作業が完了したら待ちます。私の場合Let's Encryptの証明書の発行に1~2時間かかりました。

2. Studioとさくらのドメインでwww.ありのURLを設定する

Studioでカスタムドメインを設定します。

設定後の状態は以下のとおりです。
Studioドメイン設定後

DNSの設定は前述のとおりです。

作業が完了したらTLS証明書の発行を待ちます。
TLS証明書を発行中...

カスタマーサポートの回答から察するに、Studioではかなりの数のDNSサーバー上でキャッシュが失効するまで(=伝播が完了するまで)はTLS証明書の発行が完了しないようです。
私の場合は24時間以上待っても反映されないことが2度あり、うち一度はカスタマーサポートに対応を依頼するまで完了しませんでした。

なお、申請完了後、ドメイン設定右上に現れる青い「公開」ボタンを押す必要があります。

3. www.なしをありに転送する

以下の通り、www.なしをありに転送するように設定します。ついでにHTTPS転送設定もしました。
hiroga-sakura.net ドメイン設定

www.なしのURLを開いて、www.ありにリダイレクトしていることが確認できれば完成です。
Studioに遷移

注意事項

  • 著者はStudio・さくらともに初心者なので、本記事の内容は誤っている可能性があります。
  • さくらのレンタルサーバによるリダイレクトのステータスコードは302です。301/302の違いによってページランクが喪失されることはないようですが、一般的にはwww.ありなしの統一には301を使うべきとされています。

まとめ

  • さくらのレンタルサーバのwww.転送設定で、Studioでもwww.あり・なしが統一できました。
  • Google Domainの方がオススメです。
GitHubで編集を提案

Discussion