「KUSANAGI」応用テクニック 常時SSLとHTTP/2の導入方法(Let's Encrypt編)とにかく速いWordPress(13)(3/3 ページ)

» 2016年10月05日 05時00分 公開
[中村けん牛プライム・ストラテジー]
前のページへ 1|2|3       

既存のWordPress環境にLet's Encryptを導入して常時SSL化する

 新規ではなく、既存のWordPress環境を常時SSLに変更したい場合もかなりあると思います。ある程度の知識が必要ですが、以下のアプローチで進めるとよいでしょう。

(1)HTTPSでWordPressをインストールした場合

 以下のコマンドで、KUSANAGIデフォルトの自己証明書などをLet's Encryptに変更できます。

kusanagi ssl --email xxx@example.com

 ただし、Let's Encryptの認証方法にHTTPプロトコルでのアクセスを用いているため、HTTPプロトコルでドキュメントルート内にアクセスが可能である必要があります。つまり、HTTPからHTTPSへのリダイレクトする設定がある場合は一度解除しなければなりません。

 常時SSL化の仕上げは、次のコマンドで行います。

kusanagi ssl --https redirect --hsts weak --auto on

(2)HTTPでWordPressをインストールした場合

 手段(1)のコマンド2つに続いて、WordPressのデータベース内のHTTPプロトコルでのURLに関する情報や、ファイル内にHTTPプロトコルでのURLに関する記述部分を全て修正する必要があります。

 具体的には、データベース内やファイル内に存在する「http://xxx.example.com」という文字列を「https://xxx.example.com」に置換します。

 データベース内の情報はwpコマンド(wp-cli)などを用いて、ファイル内はfindコマンドとgrepコマンドなどを用いて当該部分を特定して修正するとよいでしょう。例えば、WordPressをインストールしたディレクトリに移動して、以下のコマンドを入力すれば、データベース内の情報を置換できます。

wp search-replace 'http://xxx.example.com' 'https://xxx.example.com'

 同様に、WordPressをインストールしたディレクトリで、以下のコマンドを入力すると、PHPファイル内に記述されているHTTPプロトコルでのURLに関する文字列を検索できます。

find ./ -name '*.php' | xargs grep 'http://xxx.example.com'

 ただし、外部サービスに依存する部分は、別途調整が必要になりますので留意してください。例えば、Facebookのいいね数などのカウンターは調整できません(リセットされます)。HTTPプロトコルでの外部リソースの呼び出しがある場合なども個別の調整が必要です。

 仕上げは、手段(1)と同様に以下のコマンドを入力します。

kusanagi ssl --https redirect --hsts weak --auto on


 次回は、商用のSSL証明書で常時SSL、HTTP/2を実現する意義と導入方法を解説します。お楽しみに。

筆者紹介

中村けん牛

1971年栃木県生まれ。中学1年生で電波新聞社の『マイコンBASICマガジン』にプログラムを寄稿して以来、プログラミング歴30年。早稲田大学法学部を卒業後、野村證券に入社。公認会計士第二次試験合格。2002年にプライム・ストラテジー株式会社を設立、代表取締役に就任する。2005年にPT. Prime Strategy Indonesiaを設立して以来、アジアでのITビジネスに携わる。執筆監訳書籍に『WordPressの教科書』シリーズ(SBクリエイティブ)、『詳解 WordPress』『WordPressによるWebアプリケーション開発』(ともにオライリー・ジャパン)などがある。


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。