Studioとさくらインターネットでwwwあり・なしを統一する
注意事項
とりあえず私の環境では動きましたが、著者はStudio・さくらともに初心者なので何も保証できません。Studio公式の案内通り、Google Domainを使うのが賢明です。
TL;DR
- CNAMEでwwwありをなしに転送する方法はStudioには効かない
- さくらのレンタルサーバでドメイン設定からwww.転送設定をする
- HTTPSでのアクセスのために、さくらの設定完了後にwww.をStudioのIPアドレスに差し替える
完成図
※ドメイン hiroga-sakura.net
は適宜読み替えて下さい。
アーキテクチャ
DNS設定
前提
StudioでホストされるサイトのIPアドレスは、全て 35.194.122.208
です。
にも関わらずどうやってサイトを出し分けているかというと、おそらく :authority
ヘッダーを見ているものと推測されます(違ったら教えてください)
したがって CNAMEによってwww.あり・なしを統一する方法だと、 :authority
ヘッダーが変わらない(&2022-08-07現在、Studioはカスタムドメインを1つしか設定できない)ことからうまく行きません。
よってHTTPサーバーでリダイレクトを返す必要があります。
手順
- さくらのレンタルサーバでドメインの設定をする
- Studioとさくらのドメインでwww.ありのURLを設定する
- www.なしをありに転送する
1. さくらのレンタルサーバでドメインの設定をする
さくらのレンタルサーバでドメイン/SSLを開きます。
まず、「www.が付与されたサブドメインも利用する」のチェックを外します。
2024-09-24現在、逆にチェックを付けた状態でないと www.なし → ありへの転送が設定できないようです。
古いスクリーンショット
次にSSLを設定します。SSL証明書の利用種類は "Let's Encrypt" を選択しました。
なお、SSL登録でエラーが表示されることがあります。私の場合、原因は以下のいずれかでした。
- www.が付与されたサブドメインも利用する がチェックされており、かつwww.が付与されたサブドメインのAレコードがさくらのレンタルサーバではなかった
- ドメイン(今回は hiroga-sakura.net)のAレコードがさくらのレンタルサーバではなかった
作業が完了したら待ちます。私の場合Let's Encryptの証明書の発行に1~2時間かかりました。
2. Studioとさくらのドメインでwww.ありのURLを設定する
Studioでカスタムドメインを設定します。
設定後の状態は以下のとおりです。
作業が完了したらTLS証明書の発行を待ちます。
カスタマーサポートの回答から察するに、Studioではかなりの数のDNSサーバー上でキャッシュが失効するまで(=伝播が完了するまで)はTLS証明書の発行が完了しないようです。
私の場合は24時間以上待っても反映されないことが2度あり、うち一度はカスタマーサポートに対応を依頼するまで完了しませんでした。
なお、申請完了後、ドメイン設定右上に現れる青い「公開」ボタンを押す必要があります。
3. www.なしをありに転送する
以下の通り、www.なしをありに転送するように設定します。ついでにHTTPS転送設定もしました。
www.なしのURLを開いて、www.ありにリダイレクトしていることが確認できれば完成です。
注意事項
- 著者はStudio・さくらともに初心者なので、本記事の内容は誤っている可能性があります。
- さくらのレンタルサーバによるリダイレクトのステータスコードは302です。301/302の違いによってページランクが喪失されることはないようですが、一般的にはwww.ありなしの統一には301を使うべきとされています。
まとめ
- さくらのレンタルサーバのwww.転送設定で、Studioでもwww.あり・なしが統一できました。
- Google Domainの方がオススメです。
Discussion