icon
Let's create! WordPressサイト制作とメンテ/エラー対応から、PHP/CSS/javascriptプログラミング、動画・音・イラスト等制作まで扱うコラム

【WPプラグイン無しでサイト構築&表示を速く】Really Simple SSLって無効化して大丈夫?→設定しとけば大丈夫、ただし混在に注意

更新: 2024/02/12 3137文字

今回は『プラグイン干渉リスク低減や動作スピードアップ』のために、あえてWordPressプラグインを外して、自力で実装というのをやってみます。 対象は『Really Simple SSL』。便利・簡単操作で、しばらくお世話になったプラグインですが、あえて外して自力でカバーしてみます。 SSL対応のポイントなども見ていってみましょう。

Really Simple SSLとは?なんで外すの?

以前管理人も使っていた、『サイトのSSL化』をサポートするプラグインです。主な動作としては『自動で設定を検出し、サイトを HTTPS すべての流入リクエストを HTTPS にリダイレクト』などを行います。なお、詳しくは過去記事にも書きましたのでご覧ください。

■(過去記事)ワードプレスサイトを、プラグインでサクッとSSL化する方法 /archives/3989/

しかし、昔の状態(プラグインたっぷり)みたいになると・・・・ 『動作が重くなる』『プラグイン干渉』などの問題がでてきやすくなります。Really Simple SSL単体では問題ないですが、今後でてくるかもしれないので、自力でなんとかしたいと思います(慣れてくると、ある程度の機能はプラグイン無しで実装できる)。

Really Simple SSLを外す前に、注意しておくポイント(自力でWPをSSL化対応)

というわけで、Really Simple SSLを外して、自力でWPをSSL化対応する際に、おさえておくポイントをまとめていきます。

1:サーバー側でSSL対応してあるかをチェック

Really Simple SSLを使うときにも必須なんですが、『サーバー側でSSL対応してあるか』のチェックは重要です。『サーバーでSSL設定してないのに、httpsで表示しよう』ってのは無理があります。現在では、ほとんどの有料サーバー・一部無料ブログなどでも対応しています。

2:.htaccessファイルを使って、httpsのアドレスに転送する

プラグイン無しで、自力でhttpsのアドレスに転送するに『.htaccessファイル』を使うとよいです。 しばらく前だったから忘れていたんですけど、管理人は『RewriteRule ^(.*)index.html$ https://〇〇(ドメイン)/$1 [R=301,L]』みたいに書いていました。301というのは『301リダイレクト(恒久的な転送)』で、index.htmlに入った人を、index.html無し・かつhttpsのアドレスに飛ばすという内容です。 ただし、これだけでは不十分なので・・

『RewriteEngine on RewriteBase / RewriteCond %{HTTPS} off RewriteRule .* https://〇〇(ドメイン)/%{REQUEST_URI} [R=301,L]』

のように書いてもよいでしょう(RewriteCondで、httpsがoffの場合、httpsつきのアドレスに301リダイレクトで飛ばす、という内容)

3:サイトアドレス/WordPressアドレスもhttpsにしておく

サーバーがSSL対応していて、httpsでサイトが表示できるようになったら、サイトアドレス/WordPressアドレスもhttpsにしておきます。 SSL対応していない状態でhttpsで表示しようとすると、混在コンテンツ・警告対象となるかもしれません。また、管理人は『SSL対応していないドメインからhttpsリンクでCSSを読もうとしてて、CSSが効かなかった』みたいな例もありました。

設定さえきちんとやればSSL表示は簡単、ただしhttpとhttpsの混在コンテンツに注意

Really Simple SSLをはずしても、SSL対応ok!

で、Really Simple SSLをはずして、httpsアドレスでこのサイトを表示しようとしてみたところ、問題なく表示されました。設定さえきちんとしておけば、『SSL対応は自力で実装しやすい』項目の一つといえます。

ただし、画像やウィジェットなどのhttp混在コンテンツには注意

https表示の時に気をつけたいのが『画像やウィジェットなどhttpとhttpsの混在コンテンツ』です。 最近の(ここ数年)記事では、問題なくhttps表示されていたこのサイトですが、運営期間が長く(最も古い記事が2013年10月)、そのあいだにWordPressのタグの吐き出し方がかわってるとか、http運用時のものがそのままになっているものがありました。

たとえば、昔書いた、このおやつ記事は『httpsでアクセスしようとしても、ブラウザアイコンが緑にならない』という状態です。 理由は上記の混在コンテンツです。HTMLのソースを見てみましょう。

ごらんのように、画像タグと画像リンクに、混在コンテンツが発生しています。 『https://ドメイン/wp-content/uploads/画像名-150×78.jpg 150w” sizes=”(max-width: 480px) 100vw, 480px”』というのが出てきていますが、サイトアドレス/WordPressアドレスもhttpsにしておいたので、自動的にhttpsで吐き出された感じです。ちなみに『vw』というのは『ビューポート』です。

昔のSSL対応していないときの記事については、画像やリンク挿入ボタンを押したとき、『httpだったころのものは、そのままデータベースに格納されていて、読みだされた』という形になっています。

対策としては、『functions.phpに画像やタグのアドレス書き換えファンクションを実装』とか、『手打ちで書き換える(めんどい笑)』、『アクセス解析でチェックし、見る人がそんなにいない場合は放置する』などです。

効果~少しサイトが速くなった&あとがき・まとめ

そんな感じで、Really Simple SSLを外してしまいましたが・・・ リダイレクト・ファイルのパス書き換え・または参照するだけなどの動作が減った分、表示速度が少し速くなりました。 まとめると・・・

  • Really Simple SSLは『自動で設定を検出し、サイトを HTTPS すべての流入リクエストを HTTPS にリダイレクト』などを行う
  • 外して自力で実装する場合は『サーバー設定・.htaccessファイル転送・サイトアドレス/WordPressアドレスもhttps』を行っておく
  • 外すと、リダイレクト等がない分、表示速度は速くなる
  • ただしhttpとhttpsの混在コンテンツに注意

といったところでしょうか。WordPressのSSL化はポイントさえおさえておけば難しくないので、興味がある方は、ぜひ自力で実装してみてください。もちろん、バックアップや、WordPressアドレスを間違えて表示しないなどの対策も忘れずに。


【カテゴリ】- WordPressプラグイン情報
【タグ】-

関連記事