WordPressでこのサイトを作ったときの環境構築メモ。
ここでは、サイトへアクセスするための通信部分の設定の話(以下の赤線内の話)。
サイトを常時HTTPS化する方法としては、信頼のあるプロバイダからSSLサーバ証明書を入手してサーバにインストールする方法が一般的だが、今回はCloudflare(クラウドフレア)によるCDN化によってHTTPS化を行った。
SSLサーバ証明書はLet’s Encryptを利用すれば無料で実装はできるが、Cloudflareだともっと簡単に設定でき、基本プランは無料であり、サイトの表示の高速化も期待できる。
デメリットは、Cloudflareとサーバ間はhttpで、通信が暗号化されていない点だが、そんなにセキュリティを担保しなければならないサイトでもないので、今回は目をつぶる。
HTTPS化手法の比較とCloudflareについて参考にしたサイト
- HTTPS化の手法:サイト常時HTTPS化3つの手法「従来型SSL」「Let’s Encrypt」「CloudFlare」の長所と短所まとめ
- Clooudflareの仕組み:Cloudflareの仕組みはどうなっているのですか?
IPの静的化
まずは、WordPressのサーバのIPを固定化する。
1.GCPの左上のメニュー「≡」から、「VPCネットワーク」>「外部IPアドレス」を選択し、IPアドレス一覧を表示する。
2.WordPressのVMインスタンスのIPアドレスの種類を「エフェメラル」から「静的」に変更する。
(「エフェメラル(ephemeral)」とは、つかの間 という意味。)
ドメインの取得
ドメイン取得サービスから、ドメインを購入する。
このサイトは、価格の安さから お名前.com から購入した。
トップレベルドメイン(.comとか.netの部分)によって価格が変わるのだが、1年目が格安でも2年目以上はたいてい千円以上はかかるので、料金表はちゃんと確認して購入すべき。
今回購入した .cyouドメインは1年目180円、2年目以降は1,089円で、2年目以降が他のより安そうだったので、これにした(2年以降このサイトを続けるかは不明だが。。)。
あまり安いドメインは、怪しいサイトやスパムメールに使われやすいので、サイトの信頼性に影響するみたいだが、一旦そこは考えず、安さ優先で。
Cloudflare設定
ドメイン設定
1.Cloudflareでアカウントを作る。
2.以下の初期設定画面から、Cloudflareの「Get started」ボタンを押下する。
3.購入したドメイン名を入力する。
4.プランの選択では、一番下のFreeプランを選択。
5.DNSのAレコードのIPを、WordPressのサーバのIPに設定する。
(A(Address)レコードは、IPv4でホスト名とIPアドレスの関連づけを定義するレコード。)
設定したらContinueボタン押下。
6.ネームサーバを変更して下さいの画面に出てくるCloudflareのネームサーバのアドレスをコピーする。
7.ドメインを取得したサービスで、ネームサーバの設定変更を行う。
自分はお名前.comでドメイン取得したので、以下のような設定画面から変更した。
(設定は、管理ページの「ドメイン」>「ドメイン機能一覧」>「ネームサーバーの変更」で、「その他のネームサーバを使う」を選択し、そこにCloudflareのネームサーバを入力する。 )
設定変更したら、反映されるまで数時間かかることもあるらしいが、今回は1分もかからない内に反映された。
ICAAN Lookupで検索して反映されていることを確認。
以上、完了したらCloudflareの画面に戻って、「Done, check nameservers」のボタンを押下する。
その他設定
続けて、セキュリティ等の設定に移っていく。
1.HTTPS自動リライト
httpリクエストをhttpsにリダイレクトする設定。サイト内のURLリンクがhttpで設定してた場合、httpsにリライトしますよという話と理解。
2.常時HTTPS設定。
301リダイレクトのhttp要求をすべてhttpsで返しますよと理解。ONにする。
3.自動minify設定。
html、js、cssをminify(軽量化)して返す設定。
容量が少なくなって高速化が期待できるが、SPAのような大きなjsファイルを使ってるわけではないし、一旦OFFのまま。
4.Brotli圧縮設定。
サーバからの応答をBrotli圧縮にするかどうか。Brotli圧縮はGoogleが開発した圧縮形式。ONにする。
Brotli圧縮というものがあることを初めて知った。デメリット?はIE11に対応してないことかな。コンテンツ圧縮といえばgzipかと思っていたが、もう古いのね。。
参考:WEBスピード向上・転送量削減する Brotli 圧縮と CDN の連携
5.Finishボタンを押して終わり。
以上で設定終わり。
ドメイン名でアクセスして、WordPressの画面が表示されることを確認する。
以上です。