さくらインターネットのレンタルサーバのもとWordPressにてブログ開始までに行った事を備忘録としてまとめます。
前回の記事(【備忘録】WordPress開始手順まとめ1【さくらインターネット】)の後半部分、WordPressの自動インストールを行ったところからの続きになります。
SSL対応その1:SSL証明書導入
SSL通信へ対応させるべく設定を追加していきます。
SSLとは通信の暗号化を実現する技術です。サイトをSSLに対応させる事で閲覧していただいた方に安心していただけますし、検索エンジンからの評価も上がるのでSEO的に有利になります。
SSL/TLSってなんだろう?|SSL/TLS-総合解説サイト
さくらのコントロールパネルより
ドメイン設定
→ドメイン設定
と進み、設定済のドメイン設定を確認します。
www付与の設定をしている場合、www有無で2つとデフォルトのドメイン(XXX.sakura.ne.jp)の合わせて3つ設定があるはずですが、
設定を追加するのはデフォルトドメイン以外の2つです。独自ドメインとして1件取得し、www有無双方に適用します。
SSL証明書を発行する機関は多数ありますが、私は面倒さを嫌ってさくらのラピッドSSLを利用しました。
その場合のざっくりとしたポイントは、
- WHOIS情報の確認
- CSRの作成
- ラピッドSSL申し込み
- 証明書の取得
- SSLの有効化
です。コントロールパネルの画面案内に従い勧めます。1件目を適用したのち、2件目にも同様に適応します。
証明書や対応する秘密鍵は、1件目設定画面よりダウンロード可能ですので、ファイルとして保存しアップロード。適用します。
適用が完了したのちhttpsプロトコルで接続可能かを確認しますが、その前にWordPressの設定変更を実施し
URLを変更しておきます。
WordPressの管理画面より
設定
→一般
と進み、
- WordPress アドレス (URL)
- サイトアドレス (URL)
の二か所をhttp → httpsへ変更しておきます。
ブラウザより変更したURLにアクセスし、Chromeであれば鍵アイコンが付与された状態でアクセス可能であれば問題なしです。
WEBへの反映に時間がかかる場合があるようなので、設定より1時間ほどおいてみると良いかもしれません。
SSL対応その2:URL正規化
2017/05/06 追記:
2017/04/26より、さくらインターネットより常時SSL対応を実現する公式プラグインが配信されている事を今知りました。
プラグインを導入する事で、以下の記述のうち.htaccsess編集によるwww有無の正規化以外は個別対応不要になりました。
SSL設定まで完了しましたが、ここまでの状態では従来httpのURLでもアクセス可能な状態であり、
また検索エンジン的にはhttpが付与されたURLとhttpsが付与されたURLでは別サイト扱いです。
効率的にサイト評価を集めていくためにもURLは統一されていた方が好ましいです。
そこで、アクセスするクライアント側が入力したURLに対し、サーバ側で強制的にURLを変更する(リダイレクトする)ための設定を入れていきます。
合わせてwww有無もリダイレクトによりURLの統一(URL正規化)を図ります。
以下は、当サイトの設定に倣いwww有りでSSL対応をした場合を解説します。
リダイレクトするだけであれば、WEBサーバの設定ファイルである、.htaccsessに記述を追加するだけですが、
さくらインターネット環境下では、特定要因のために単純にはいきません。
WEB専門ではないので各サイト様を参考にさせて頂き、最終的に以下に落ち着きました。
wp-config.php
さくらのコントロールパネルより、
運用に便利なツール
→ファイルマネージャ
と洗濯し、ドメイン直下に存在するwp-config.phpファイルを開き最上部へ以下の記述を追加します。
if( isset($_SERVER[‘HTTP_X_SAKURA_FORWARDED_FOR’]) ) {
$_SERVER[‘HTTPS’] = ‘on’;
$_ENV[‘HTTPS’] = ‘on’;
$_SERVER[‘HTTP_HOST’] = ‘www.example.com’;
$_SERVER[‘SERVER_NAME’] = ‘www.example.com’;
$_ENV[‘HTTP_HOST’] = ‘www.example.com’;
$_ENV[‘SERVER_NAME’] = ‘www.example.com’;
}
example以降は各ドメインへ置換してください。
functions.php
各テーマごとのフォルダに存在するファイルを編集します。
WordPress管理画面より、
外観
→テーマの編集
と進んでも良いですし、ファイルマネージャより
/wp-content/themes/利用中のテーマ
とファイルを直接編集しても大丈夫です。
remove_filter(‘template_redirect’, ‘redirect_canonical’);
の記述を追加します。記述場所は、特別な設定を追加していなければ末尾で大丈夫です。
後述する.htaccsessへのリダイレクト設定追加により、リダイレクトループと呼ばれる現象が発生する事を回避するための措置です。
.htaccsess
ファイルマネージャより.htaccsessを編集し、以下記述を先頭に追加します。すでに存在するコメント行以外に先行して記述する必要があります。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/wp-cron.php$
RewriteCond %{HTTP_HOST} ^exapmle.com$ [NC]
RewriteRule ^(.*)$ https://www.exapmle.com/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !^/wp-cron.php$
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://www.exapmle.com/$1 [R=301,L]
</IfModule>
最初のRewriteCond ~ RewriteRule までが「www無しのURLでサクセスされたら、httpsのwww有りにリダイレクトする」設定、
次のRewriteCond ~ RewriteRule までが「httpでアクセスされたら、httpsのwww有りにリダイレクトする」設定になります。
これで、
- httpでwww無しでアクセスされた場合
- httpでwww有りでアクセスされた場合
- httpsでwww無しでアクセスされた場合
- httpsでwww有りでアクセスされた場合
いずれの場合でも
パーマリンク設定の変更
SSL対応の話から毛色を変え、WordPressの設定変更を実施しておきます。
設定
→パーマリンク設定
と進み、初期選択の「基本」から任意の設定へ変更しておきます。
後々になってコンテンツを作成したのちで設定変更を行うと、ページ間のリダイレクトなどが発生することになり面倒ですので最初に設定しておきます。
SEO的にはカスタム構造が良いと言われていますが、好みの問題かもしれません。当サイトは、カスタム構造にて
/%postname%-%post_id%/
を設定しています。
URL正規化の話で長くなりましたのでここまでにします。さくらインターネット環境化WordPressを始めるにあたり最初にやった事はざっとこの流れです。
残すはテーマ変更とプラグインの導入あたりですが、好みの問題などもありますので記事には起こさないかもしれません。
個人的に重要なのは「All In One SEO Pack」プラグインによるSEO対策と、「BackWPup」プラグイン導入によるバックアップ対策でしょうか。
利用中のプラグインとして、然るべきタイミングでまとめる方がよさそうですね。
コメント