ConoHaVPSで公開しているWordPressをSSLに対応させました

スポンサーリンク

この記事をシェアする

どーも、まるほいです。タイトルは当ブログの話です。本日、SSLに対応させました👍 

認証には無料で利用出来る『Let’s Encrypt』を利用しました。

Let’s Encrypt is a free, automated, and open certificate authority brought to you by the non-profit Internet Security Research Group (ISRG).

今回のSSL対応は、過去のミスを活かし、調査と作業の時間は別にする、調査した事はまとめておくという事を意識しながらやったんですが、それでも何箇所か詰まりました。

ですが、調査でまとめた内容は普通に役立ったので、詰まった内容を補完した物と共にブログ用に編集して公開しておこうと思います。参考になったら幸いです。

サーバー(ConoHa VPS)の環境は、CentOS+Apache+MySQL(LAMP)って感じです。ConoHa、WordPress専用のテンプレートとかあるみたいですけど、試せてないですね。

ConoHaは初期費用、データ転送一切無料のVPSです。すべてのストレージにSSDを採用したハイスペックなVPSは630円/月~。豊富なOS/アプリケーションテンプレートや多機能なAPIでサービスの運用・構築を大きくサポートします。

サイトのSSL対応作業方針

SSLや認証局の事をざっくり把握する

Web サイトを常時 SSL 化する場合に、最低限知っておかなければならない知識や、注意点、実際の設定方法まで、ひと通りまとめてみました。メリットやデメリット、証明書の種別からリダイレクト設定などについても解説しています。
安全なウェブサイトを公開するため、無料で利用可能な Let's Encrypt の証明書を使う方法をご紹介します。Let's Encrypt の背景とSSL証明書の自動発行をはじめ、CentOS 7 上の Nginx ウェブサーバを SSL に対応する方法、そして、証明書を自動更新する方法を見ていきましょう(所要時間1...

iptablesでport443を許可する

忘れていて詰まった。あるあるらしい。

SSLの設定で自分が2日間はまったので、次来る人がすぐに気づいてくれるようにメモを残しておきます。 私の開発環境は、GMOのグローバルサインでSSL証明書や秘密鍵を発行し、EC2インスタンスにRailsとWordpressを共存さ...

WordPressのバックアップ

以下を参考にする。

Let’s Encryptを利用する

環境構築などを自動でやってくれる『certbot』を利用する。

Automatically enable HTTPS on your website with EFF's Certbot, deploying Let's Encrypt certificates.

公式ドキュメントでも良いんですが、以下がとても参考になりました。

# この記事について Let's encryptは無料で使用できるSSLプラットフォームです。(コマンドを使って、簡単にSSL証明書の取得と更新ができます。 し...
cronの設定ですが、自分は毎週って感じにしました。

ssl.confにSSLの設定を記述する

Firefoxなどで知られるmozillaが提供する、Webサーバー毎にSSL/TLS推奨設定を生成するサイトを利用する。

認証ファイルのpathとかまでコピーしない様に。

HSTS Preloadに登録する

ssl.confに上記の推奨の設定を書くと有効化される。以下を参考にする。

HTTPで接続した際に、強制的にHTTPSへリダイレクトし、以降のそのドメインへの接続はすべてHTTPSとする機能が(
httpd.confやssl.confを編集して反映させる時はWeb鯖の再起動をやっておく。再起動後に独自ドメイン前にhttps://を付けてアクセス出来たら成功。

ssl対応確認のテストをする

以下のサイトに独自ドメインを入力してテストしてみる。

A comprehensive free SSL test for your public web servers.

ssl-report

わーい。

.htacessでリダイレクト(301)させる

以下を参考にする。具体的には

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://sample.com/$1 [R=301,L]
</IFModule>
#BEGIN WordPress
(中略)
#END WordPress
2014年8月7日にGoogleがHttpsをSEOの評価項目にすると発表しました。Google ウェブマスター向け公式ブログ: HTTPS をランキング シグナルに使用しますこのため、httpからhttpsへの変更を考えているWEB担当者

WordPress周り

一般設定でのサイトリンクの変更、内部リンクを置換、Googleアナリティクス、Google Search Consoleの対応、サイトマップの更新、ロゴやfaviconの再設定、プラグイン別のSSL対応、テーマ別のSSL対応など、やる事がたくさんある。既にまとめているサイトが複数あるので参考にして必要な情報だけメモしておき、順に作業する。

エックスサーバーが独自SSLを無料かつ無制限で利用できるようになりました。何年か前なら、年に結構なお金のかかっていたものが、無制限で無料です。ここまでお膳立てされたのなら、さすがに使用してみたくなります。なので、早速サブサイトのSimpli
ようやくこのサイトのHTTPS化を行いました。HTTPS化とはウェブサイトを暗号化することで、SSL化とも言われています。2015年12月にGoogleが、HTTPSのサイトを優先的にインデックスするアナウンスがありました。Googleが検

今後の課題

という訳で、作業した内容はチェックを付けたり「OK」とか書いて対応を終わらせました。まとめるのには今話題の『Boostnote』を利用したんですが、Markdownでメモしながらコードも合わせてメモ出来るので、調査した物をまとめておくのにはもってこいでした。今後も使いそうです。

Boostnote is simple note app, code manager, snippet manager and memo app for software programmer. Boostnote save all of your information about devepment. Be a h...

SSL対応は無事に終わったのですが、いくつか課題が残りました。

メディア挿入でURLから挿入した画像が「http://」になっている記事は「mix content」になるので、一部の記事がSSLに完全対応出来ていません。また、Steamのストアページをwidgetで表示させている記事ではiframeが無効化されるために非表示になっています。

該当記事

8月のSquadアップデートでロジスティックシステムや分隊専用車両機能が追加へ
先日、車両追加を含むアップデートが7月中に予告されていたSquadですが、なんだかんだで8月にずれ込んだ様で、「Version 7」という形...
SteamのGreenlightにあるゲームをオススメする時に使える公式widgetの使い方
EarlyAccess作品をオススメしたい時に、公式サイトと合わせてGreenlightのページを紹介したい時に利用出来るWidgetです。...

これらには手動で対応する必要がありそうでちょっと困ってます。それに、iframe非表示はデフォルトになるので今後はSteamのWidgetも利用出来なくなりますし、プロフィールに表示させていたsteam signatureは「http://」で始まる画像を使っているので消すしかありませんでした。代替を探したり調査する必要があります。個人的にはiframe使いたいんですが、そのために該当記事だけ「http://」にリダイレクトさせるのはアレなのでどうにかしたい所です。