では、この混在コンテンツはどのように対処していけばよいか。その方法を紹介します。
Webブラウザは「Google Chrome」を使います。「F12」キーか「設定」→「その他ツール」から、デベロッパーツールを起動します。
「Network」タブに移り、フィルター入力窓に「mixed-content:all」と入力します。
この状態で混在コンテンツであると思わしきページにアクセスすると、混在コンテンツの原因となっているリソースがリストアップされます(図4)。
この情報をヒントにしてWordPressサイトの修正を行うとよいでしょう。
リソースの呼び出し元がWordPressサイトのデータベースにある場合には、wp-cliコマンドを使って呼び出し先のURL文字列を「https://」に置換します。
cd /home/kusanagi/example.com/DocumentRoot wp search-replace 'http://example.com' 'https://example.com'
リソースの呼び出し元がWordPressサイトのファイルにある場合には、呼び出し元となっているファイルを特定して、呼び出し先のURL文字列をエディタなどで「https://」に修正します。
cd /home/kusanagi/example.com/DocumentRoot find ./ -type f | egrep '(css|js|php)$' | xargs grep 'http://example.com'
呼び出し先のリソースが外部にある場合も、呼び出し元がWordPressサイトのデータベースにある場合は「対処方法1」と同様の処理を、呼び出し元がテーマやプラグインなどのWordPressサイトのファイルにある場合は「対処方法2」と同様の処理を行います。
しかし、「対処方法1」や「対処方法2」のケースでは、呼び出し先も呼び出し元もWordPressサイトの管理者(自分自身)がコントロール可能であるのに対して、呼び出し先が外部にある場合は、WordPressサイトの管理者(自分自身)ではコントロールできない場合があります。
例えば、外部リソースがそもそもHTTPSで呼び出せない場合や、HTTPSで呼び出した外部リソースから、さらにHTTPでの呼び出しがある場合も考えられます。この場合は、当該リソースの管理者に対応を依頼をするか、代替の処理を検討することになります。古いサービスのためにアップデートが期待できず、代替処理のコストが高くなるならば、機能ごと割愛してしまう方がよい場合もあるでしょう。外部リソースが問題となるケースは、状況に応じた処理を検討してください。
以上、混在コンテンツの洗い出しと修正を済ませたら、再度Goocle Chromeのアドレスバーを確かめてみましょう。「鍵マーク」と「保護された通信」とあり、デベロッパーツールでの「mixed-content:all」フィルターで混在コンテンツがリストアップされないようになれば、対処は完了です(図4)。
次回は、KUSANAGI運用編として、ログの活用方法、監視ツールの使い方、KUSANAGIのクラスタ構成、WordPressのアプリケーションレベルでのさらなる高速化チューニングなどのテクニックを解説する予定です。お楽しみに。
1971年栃木県生まれ。中学1年生で電波新聞社の『マイコンBASICマガジン』にプログラムを寄稿して以来、プログラミング歴30年。早稲田大学法学部を卒業後、野村證券に入社。公認会計士第二次試験合格。2002年にプライム・ストラテジー株式会社を設立、代表取締役に就任する。2005年にPT. Prime Strategy Indonesiaを設立して以来、アジアでのITビジネスに携わる。執筆監訳書籍に『WordPressの教科書』シリーズ(SBクリエイティブ)、『詳解 WordPress』『WordPressによるWebアプリケーション開発』(ともにオライリー・ジャパン)などがある。
Copyright © ITmedia, Inc. All Rights Reserved.