nginx 環境におけるwordpress常時SSL化とHTTP/2対応


目次

  • はじめに
  • 常時SSL化
  • HTTP/2対応
  • さいごに

Ads by Google

はじめに

ロリポップのレンタルサーバからさくらVPSにサーバを引っ越しました。引っ越しに関する情報は山のようにありますので改めて書きませんが、手順をしっかりと踏めば誰でもできます。

一箇所だけ詰まった箇所があります。URLです。多くの情報が、ドメイン直下にwordpressをインストールしている場合が多く、そのまま設定を適用できなかったことです。これは正規表現でうんうん唸りながら何とか解消しました。(この情報が必要な方がいればコメント頂ければ記事を書きます)

引っ越しの際にとても参考にさせていただいたサイトは以下です。

nginxのチューニングは、掴みきれていませんが頑張っています。

さて、そんなわけで無事に引っ越しが済みました。今回引っ越しした理由は3つありまして、それが今回のエントリに繋がっています。

  • ロリポップレンタルサーバだと遅いと感じるようになってきた
  • HTTP/2に対応したい
  • ブログを常時SSL化したい

というわけで、「nginx 環境におけるwordpress常時SSL化とHTTP/2対応」いきましょー。
※ wordpress以外でも適用できる汎用性のある情報です。

常時SSL化

証明書の取得とnginxの設定

まずは証明書が必要です。これがないと始まりません。
無料のSSL証明書StartSSLを活用する – Qiita

(本当は「Let’s Encrypt」で取得したかったのですが、ツイートしてる通り予定が遅れているようです)https://twitter.com/popcosorn/status/641224120126980096

証明書を取得したら、配置して、nginx の設定をするだけです。これも上記のリンクにある通りです。これでSSLが使えるようになりました。

SSLに関しては他にも色々設定できる項目があります。
Qualys SSL LabsでスコアAがとれるnginxのTLS/SSLの設定方法 – kumaaaaaaa!

最後は常時SSL化です。非常に簡単です。リダイレクトすればOKです。
nginx で http でのアクセスを https にリダイレクト

SSL化してみると鍵のマークに異常がありました。「このページには安全でない他のリソースが含まれています」。これはhttps通信なのに、リソースの取得などのためにhttp通信が含まれると発生するエラーの一つです。
「このページには安全でない他のリソースが含まれています。」って大丈夫?

問題の箇所はLiveHttpHeaderでhttp通信をしているところを探すのが早いです。僕の場合は購読するボタンの画像が外部にホスティングされており、http通信のままになっていたのが問題でした。

はい。これで晴れて何も問題がない鍵マークが表示されるようになりました。

key

wordpressの設定

最後にwordpressの設定です。「管理ページ→設定→一般」と進んで、wordpressアドレスとサイトアドレスをhttpsにして全てが完了です。

常時SSL化お疲れ様です。残すはHTTP/2です。

HTTP/2化

さて、次はHTTP/2化です。拍子抜けするほど簡単です。
Nginx 1.9.5 でHTTP2を試そう!

各種パラメータの設定は「Nginx 1.9.4 HTTP/2 のconf パラメータ設定項目」を参考に設定しました。これは任意です(timeoutとheader関連くらいはやっておいたほうが良いでしょう)。

はい。これで晴れてHTTP/2化が完了です。

さいごに

お疲れ様でした!これで晴れて「nginx 環境におけるwordpress常時SSL化とHTTP/2対応」が完了しました。簡単でしたね。

バックアップもしておきましょうねー。
さくらVPS上のOSを丸ごとバックアップする