ロリポップ!レンタルサーバーの初期(サブ)ドメインでWordPressを約1年半運用後、独自ドメインへの切り替えと同時にSSL化(https化)を行った際の行動、つまづいた点を備忘録的に残しておきます。
WordPressプラグインのインストールの仕方、などは分かっているものとして書いていません。
目次:
ムームードメインにて独自ドメイン取得
ドメインはロリポップと提携している「ムームードメイン」で取得しました。
定番のお名前.comでの取得でも問題は無いかと思いますがムームードメインの場合は申し込みの際にネームサーバでロリポップが選択できるので素直に囲い込まれる事にしました。
ここでロリポップを選択しておけば後の設定作業が減ります。
ドメイン料金は.comで799円、.netで1160円、.infoで499円が初年度の相場のようです。
ただしスパムメールのドメインによく使用された過去からドメイン拒否されている可能性があり、メール配信等で展開していきたい人は避けた方がいいかもしれません。
個人的に.infoドメインへの不信感は実態がなくそれでいてもっともらしい都市伝説のようなものだと思っています。
ドメインは支払いが確認された時点で契約完了となります。
30分ほどで「ドメイン情報認証のお願い」というメールが届くので本文中のURLから認証して、ドメイン取得は完了となります。
ロリポップにて独自ドメイン設定
ロリポップのユーザー専用ページから「サーバーの管理・設定→独自ドメイン設定→ステップ2. 独自ドメインをロリポップ!に設定する」に進み、取得したドメインを入力します。
ロリポップでWordPressをインストールをする際にディレクトリ(公開フォルダ)を変更していなければ、下欄は空白のままでOK。
ドメイン取得時の「ネームサーバ(DNS)」設定でロリポップを選択していれば、他の項目(DNS設定など)は自動的に完了しています。
この後、新規ドメインのネームサーバ情報(DNS情報)がインターネット上に反映されるまで、公式によると24時間~72時間程度かかるそうなので寝ましょう。
.comなどのトップレベルドメインであれば比較的早く開通するようです。
私(.com)の場合も1時間ほどで開通しました。
独自ドメイン取ってSSL化しないとかちょっと意味わかんないです
ドメインが反映されアクセスできるようになったら次にサイトSSL化します。
SSL化というのは噛み砕いて言うと「通信を暗号化してセキュリティを強化する」作業です。
SSL化されたサイトはアドレスがhttp://ではなくhttps://になります。
googleが強力に推進してきたため昨今では「httpsあらずんばwebサイトにあらず」という雰囲気もあり、SSL化されていないサイトにアクセスするとご丁寧にアドレスバーに「保護されていない通信」と出て閲覧者に要らぬ不安を与えてくる始末。
SSL化されていればアドレスの前に鍵マークがつきます。
ロリポップの場合SSL化するためには独自ドメインが必要で、その分金がかかるという点を除けばSSL化には、腰痛が治った、宝くじが当たったなど、ほぼメリットしかありませんのでサクッと設定しましょう。
ロリポップにて独自SSL設定
ユーザー専用ページで「セキュリティ」→「独自SSL証明書導入」と進み、登録したドメインにチェックを入れて設定ボタンを押す。
5分ほどで設定が完了し、「×SSL保護無効」が「●SSL保護有効」に変わります。
「はい、これでSSL化終わりー」と思いアクセスすると、SSL化はされてるけど完全ではない状態。鍵マークになっていません。
テーマがそもそもSSL化に対応していない等エラーメッセージによって対応は変わってくるかと思いますが、私の場合の原因は
「画像アドレスの読込先にhttpが指定されていた」
でした。
すべての画像はhttpsから読み込む必要があるのでWordpressに入り修正します。
と言うかエラーがあろうがなかろうが、WordpressはSSL化サイト用に設定し直します。
SSL化したサイトアドレスをWordPressに設定する
旧ドメインのWordpress管理画面にログインします。
「設定」から「一般」に進み、アドレスをhttpsに変更。
設定変更すると管理画面を追い出され、新ドメインのログイン画面に飛びますので再度同じIDとパスでログインしてください。
ログイン後、ブックマークしておくのを忘れずに。
Search Regexプラグインでhttpをhttpsに一括変換する
前述の通り、エントリー本文内の内部リンクや画像リンクを全てhttpsに変更する必要がありますが、1エントリーずつ手作業していては到底終わらないためプラグインで一括変換します。
Search Regexについては寝ログさんの記事を参考にしました。
参考 WordPressをhttpからhttpsにSSL化した全手順まとめ(エックスサーバー環境) 5. 内部リンクをSearch Regexで全て置換する寝ログSearch patternにロリポップのサブドメインアドレス、Replace patternにhttpsのアドレスを入れて「Replace」(実際には変換しないプレビュー)ボタンを押すと、変換候補一覧が出てきます。
本当は致命的な誤変換がないよう1項目ずつ精査する必要がありますが候補数がありすぎて面倒だったので、2つ3つ確認してから額の前で十字を切って「Replace&Save」(変換実行)ボタンを押して変換しました。
これで完了かと思いきや、まだ鍵マークが出ず「i」マークのままです。
先ほどの寝ログさんの記事を参考にGoogle Chromeブラウザを使いトップページ上で「F12キー」を押してデベロッパ画面を出し、「Consoleタブ」を見ると6箇所警告が出ていました。
どうやらSearch Regexプラグインではウィジェット内に記載されているリンクアドレスは変換しないようです。
参考 SSLエラーのチェック方法寝ログ私のサイトではサイドバーのウィジェットで似顔絵画像を出すのに、httpの画像アドレスを絶対パスで記載していたためその部分をすべて修正、無事SSL化が完了しました。
前のサイトからSSL化サイトへ、.htaccessファイルで転送する
サイトのアドレスが変わっても検索サイトやブックマークではまだ前のアドレスでインデックスされているため、前のサイトにアクセスした人を自動で新しいサイトにリダイレクト(転送)させます。
ロリポップのユーザー専用ページから「サーバーの管理・設定」→「ロリポップ!FTP」に進みます。
.htaccessの編集をミスるとページ真っ白になるので、FTPの下にある「ダウンロード」ボタンでバックアップしておきましょう。お守り代わりです。
バックアップが済んだら.htaccessファイルをクリックして中身を編集します。一行目に以下のコードをペーストして、日本語の部分を自分のサイト環境に編集してください。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^アカウント名\.サブドメイン\.jp [NC]
RewriteRule ^(.*) https://新しいドメイン/$1 [R=301,L]
私の環境では以下の通りです。
完了したら「保存する」ボタンで終了です。
ブラウザから前のアドレスのトップページを入力し、新しいアドレスに転送されれば完了です。
他のエントリーでも試しておくといいでしょう。
これで閲覧的にはひとまず完了です。
Google AnalyticsやSearch Consoleを導入している人は引き続き設定を行ってください。
ゆーいち