WordPress個別サポート

「サイトをSSL化するとSEOに効果がある」とウワサですね。そんな流れで「どうせならサイト全体をSSL化しちゃおう!」と思っている方も増えているようです。WordPressであればサイト全体をSSL化(いわゆる「常時SSL化」)する設定は簡単ですが、乗り越えるべき課題もあります。

ここでは、WordPressでサイトを常時SSL化する設定を説明して、設定後にも残る定番の課題を紹介します。サイトの常時SSL化を検討している方は参考にしてください。

スポンサーリンク

WordPressを常時SSL化する設定

WordPressサイトを常時SSL化する設定は次のようになります。

アドレスを「https」に変更

「設定」‐「一般」メニューの「WordPressアドレス」と「サイトアドレス」を「https」のURLに変更します。

URLをhttpsベースに変更

URLをhttpsベースに変更

言うまでもありませんが、この作業を始める前にSSLサーバー証明書の取得が必要です。また、アフィリエイト中心のサイトでは常時SSL化が適さないケースもあるので、この記事を一読してから常時SSL化を検討しましょう。

完了すると、グローバルメニューなどはSSLベースのURLになります。

グローバルメニューのリンクURLが「https」になる

グローバルメニューのリンクURLが「https」になる

まだSSL化は完了していません

ただし、まだ完了ではありません。投稿に入っている画像などのURLが「http」のままになっているため、ブラウザに警告が表示されます。これを「混在コンテンツ(mixed content)問題」といいます。SSL接続のサイトに非SSL接続のコンテンツが混じっていることを示し、SSL化する際に解決が必要な課題となります。

たとえば、Internet Explorerでは「セキュリティで保護されているコンテンツのみ表示されます」のようなメッセージが表示されます。

セキュリティで保護されているコンテンツのみ表示されます

SSL化が不完全な状態(Internet Explorer)

FireFoxでは「このページの一部は安全ではありません」のようなメッセージが表示されます。画像などが非SSL接続だということです。

このページの一部は安全ではありません

SSL化が不完全な状態(FireFox)

サイト内の「http」を動的に「https」に変更

これに対処するために本文内のすべての「http://」を「https://」や「//」に置き換えるのは面倒ですが、WordPress HTTPSプラグインを使えば、本文内の文字を置き換えずにURLを動的に「https://」に置き換えて表示することができます。

まずは、「プラグイン」‐「新規追加」メニューからWordPress HTTPSプラグインをインストール、有効化します。

WordPress HTTPSプラグインのインストール

WordPress HTTPSプラグインのインストール

「HTTPS」メニューを開いて、SSL化するページまたはフォルダを設定します。ここでは常時SSL化するため、「Secure Filters」に「/」と入力して「Save Changes」をクリックします。これはサイト全体(サイトのルート以下)をSSL化(常時SSL化)することを意味します。

サイト全体をSSL化する

サイト全体をSSL化する(SSL化するパスを設定)

設定の完了後、サイトを確認すると記事画像のURLもhttpsベースになっています。記事本文の文字置き換えは行っていないので、編集画面には「http」のURLが残っていますが、ページを表示する際に「https」のURLに切り替わります。

画像のURLもhttpsになる

画像のURLが動的にhttpsになる

これで基本的なWordPressのSSL設定は完了です。

非SSL接続が残っていると警告が表示される

サイトの構成によってはここからが問題です。上記の設定後も「この接続は安全ではありません」や「このページの一部は安全ではありません」と表示される場合、サイト内に非SSL接続が残っている可能性があります。たとえば、アフィリエイト広告の画像などです。URLが「http://」になっていないでしょうか?

表示中のページに残っている非SSL接続は、インスペクタの「ネットワーク」タブ(FireFoxの場合)で確認できます。

アフィリエイト広告画像の読み込みで警告が表示される

非SSL接続が原因で警告が表示される(FireFoxインスペクタの「ネットワーク」タブ)

SSL接続で読み込んでいる画像やCSSなどは安全のアイコンですが、非SSL接続は安全ではないのアイコンになります。ブラウザの警告を消すには非SSL接続に対処する必要があります。たとえば、次のような方法があります。

http接続はhttps接続に変更する

アフィリエイト画像なども「https」のサイトから読み込むように変更する必要がありますが単純に「http」から「https」への文字置き換えで対応できるとは限りません。接続先のアフィリエイトサイトなどがSSLに対応してるか確認しましょう。

画像リンクをテキストリンクに置き換える

アフィリエイト画像を読み込んでいるサイトがSSL対応ではない場合、画像リンクを止めてテキストリンクに置き換える方法があります。基本的にはテキストリンクは「http://」で始まるサイトへのリンクであってもSSL化のネックにはなりません。

ただし、アフィリエイトのテキストリンクは要注意です。テキストリンク用のタグにも幅1px、高さ1pxの統計用(表示回数の集計用)画像を読み込んでいる場合があります。その画像が非SSL接続(http://)だと「この接続は安全ではありません」の警告が消えません。

テキストリンクのトラッキング用画像の「http」に注意

テキストリンクのトラッキング用画像の「http」に注意

アフィリエイトタグを削除する

どうしてもhttp接続することになってしまう場合、考えられる選択肢は次のとおりです。

  1. ブラウザの警告が表示されても無視する
  2. アフィリエイトタグを削除する
  3. 常時SSL化をあきらめる

ブラウザの警告を無視してそのままエラーメッセージを受け入れるのは企業サイトでは疑問ですが、アフィリエイトサイトや個人的なブログで、対象になるページが数ページしかない場合は、それでも仕方ないかもしれません。そこは個人の判断にお任せします。

非SSL接続のアフィリエイトタグをすべて削除すれば警告が消えて問題もクリアできます。あとは、Google AdSense‎のようにSSL対応の広告を中心に扱っていけば大丈夫です。ただし、「非SSL接続のアフィリエイトタグは削除しましょう」とすすめているわけではないので、注意してください。

アフィリエイトタグを削除できない場合は常時SSL化をあきらめることになるかもしれませんが、将来的にアフィリエイトサービスがSSL対応になる可能性もあるので様子をみましょう。

重要なことは、アフィリエイトのようにサイトの目的によっては常時SSL化が難しい場合もあるということです。「SSL化するぞ!」と意気込んで高額なSSLサーバー証明書を購入しないように注意してください。まずは、自分のサイトが常時SSL化しても大丈夫かどうか検討した方が無難です。

WordPressの常時SSL化の完了

すべての接続をSSLベースに変更し、ブラウザの警告が消えて「安全な接続」になればWordPressの常時SSL化は完了です。

SSL化の完了

常時SSL化の完了

まとめ

WordPressを常時SSL化する手順と問題点を簡単に紹介してきました。設定は簡単ですが、課題の解決が面倒な場合があることがイメージできたでしょうか。特にアフィリエイト中心のサイトでは、せっかく取得したSSLサーバー証明書が無駄にならないように、アフィリエイトサービスがSSL接続に対応しているのか事前に調べてから証明書を取得した方が無難です。

この記事をSNSで共有する
WordPressでお困りのときはご相談を
この記事を書いた西沢直木が直接、WordPress個別サポートで対応します。
こんなときはご相談を
  • WordPressの使い方(ページやメニューの作り方を教えてほしい)
  • カスタマイズ(機能の追加やデザイン調整をお願いしたい)
  • トラブル対応(画面真っ白・「ログインできない」を解決したい)
マンツーマンなので相談内容は自由です。いただいた課題をその場で解決、CSSやPHPも目の前で修正します。気軽にご相談ください。
WordPress講座の問い合わせ先

関連記事

BizVektorのカスタマイズ

WordPressカスタマイズ

WordPressプラグイン

スポンサーリンク
西沢直木によるWordPress講座の紹介
ホームページ作成講座WordPress個別サポート