[Server & Network General] さくらレンタルサーバの HTTPS 対応 with WordPress

SSL 証明書の取得と設定、Google、WordPress の設定。

[markdown]
手順が多いのでまとめておく。

## SSL 証明書の取得と設定

ラピッド SSL を新規に申し込みます。

### 申込み

こちらから申込み。

> [さくらのSSL | SSLサーバー証明書ならさくらインターネット](https://ssl.sakura.ad.jp/)

コントロールパネルで CSR を作成する。

> [【独自SSL】その他機能 – さくらのサポート情報](https://help.sakura.ad.jp/hc/ja/articles/206207241#021)

### 認証ファイルのアップロード

ドメイン所有の確認。
クレジット決済の場合、申込みから 30 分ほどでメールが到着。

認証ファイルをアップロードする。

– [会員メニュー](https://secure.sakura.ad.jp/menu/service/index.php)にログインし、「契約情報>サーバ証明書」、詳細画面より認証ファイルをダウンロード。
– ダウンロードした認証ファイルを、申請時に指定した FQDN (コモンネーム)配下にアップロード。

認証用ファイルが配置されたことを認証局が確認し、証明書が発行される。
メール連絡を待つ。

### サーバ証明書・中間 CA 証明書の取得と設定

サーバ証明書を取得。

– [会員メニュー](https://secure.sakura.ad.jp/menu/service/index.php)にログインし、「契約情報>サーバ証明書」、詳細画面より SSL サーバ証明書(server.crt)をダウンロード。

中間 CA 証明書を取得。

– ジオトラスト SSL サーバ証明書を利用する場合、中間CA証明書のインストールが必要。
– 下記 URL より該当サービスの中間 CA 証明書を選択し、認証局のウェブサイトにて中間証明書を CA 証明書ファイルとして任意のファイル名(intermediate.crt)で保存。

> [ジオトラスト ラピッドSSL](https://www.geotrust.co.jp/resources/rapidssl/repository/intermediate_sha2.html#b)

下記を参考に[コントロールパネル](https://secure.sakura.ad.jp/rscontrol/rs/domain)から設定する。

> [【独自SSL】導入の流れ・設定手順 – さくらのサポート情報](https://help.sakura.ad.jp/hc/ja/articles/206054802#033)

– 「SSL サーバ証明書」と「中間 CA 証明書」をサーバにインストール。
– 「ドメイン設定」の対象ドメイン「変更」をクリック、「SNI SSLを利用する」を有効化する。

## WordPress

さくらのレンタルサーバの仕様に対応する設定が必要とのこと。
ありがとうございます。

### さくらのレンタルサーバ対応

WordPress 設置時の `.htaccess` と `wp-config.php` に以下の設定を加えます。

> [さくらのレンタルサーバでHTTPS(SNI SSL)な独自ドメインのWordpressサイトを構築する際の注意点 – Qiita](http://qiita.com/tabimoba/items/64ef60412abe7ad6f0ac)

“`:.htaccess

RewriteEngine On
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

“`

“`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’;
}
“`

> * [さくらのレンタルサーバでWordPressサイトを常時SSL化するとリダイレクトループが発生する場合の対処方法 | Crane & to.](https://www.craneto.co.jp/archives/409/)
> * [さくらのレンタルサーバーで、.htaccess を使って http を https へリダイレクトして、www も無しで統一する | Latele Blog](https://latele.co.jp/blog/back-end/2016/0418_10)

### 管理画面

> [WordPressをhttps化する方法とさくらサーバーでの注意事項 | ウェブタタン](https://webtatan.com/blog/wordpress/wordpress-https-sakura)

– 「設定>一般」の「WordPress アドレス (URL)」と「サイトアドレス (URL)」を `https` に書き換える。

[SNS Count Cache](https://wordpress.org/plugins/sns-count-cache/screenshots/) プラグインも使っているので、設定を変更する。

– 「HTTPからHTTPSへのスキーム移行モード」を有効化する。

必要に応じて投稿内の絶対パス書き換え。

> [Search Regex — WordPress Plugins](https://ja.wordpress.org/plugins/search-regex/)

## Google

こちらで設定の必要性に気づけました。
ありがとうございます。

> * [WordPressの常時SSLとhttpsリダイレクト!SSL証明書をエックスサーバーで取得](https://webdesignerwork.jp/ssl-https-wordpress/)

### Search Console

[Search Console](https://www.google.com/webmasters/tools/home?hl=ja&pli=1) の以下を設定。

– Google Search Console プロパティの追加(https://)
– XML サイトマップの追加
– Fetch as Google インデックスの送信

> * [HTTPS対応に伴うGoogle Search Console設定について – Jimdo(ジンドゥー)](http://jp.jimdo.com/2016/12/29/https-vs-gsc/)
> * [ウェブサイト プロパティを追加する – Search Console ヘルプ](https://support.google.com/webmasters/answer/34592?hl=ja)

### Google Analytics

[Google アナリティクス](https://www.google.com/intl/ja_jp/analytics/)の以下を設定。

– 「管理>プロパティ設定>デフォルトの URL」を `https` に変更。
– 「管理>プロパティ設定>Search Console」から、https サイトを紐付ける。
– 「管理>ビューの設定>ウェブサイトの URL」を `https` に変更。

以上で完了です。

## 補遺

* [http から https へのリダイレクトを行う httpd.conf (mod_rewrite)](https://snap.textfile.org/20160204220325/)
[/markdown]