[WordPress]さくらサーバでWordPressをSSL対応させる

[WordPress]さくらサーバでWordPressをSSL対応させる

web

さくらのSSL対応はちょっとやっかい

さくらは他のサーバとくらべ、SSL対応時に特殊な対応が必要になります。
編集する必要はあるのは、

  1. wp-config.php
  2. rootの.htaccess

です。

wp-config.php

if( isset($_SERVER['HTTP_X_SAKURA_FORWARDED_FOR']) ) {
    $_SERVER['HTTPS'] = 'on';
    $_ENV['HTTPS'] = 'on';
    $_SERVER['HTTP_HOST'] = 'YOURDOMAINNAME.com';
    $_SERVER['SERVER_NAME'] = 'YOURDOMAINNAME.com';
    $_ENV['HTTP_HOST'] = 'YOURDOMAINNAME.com';
    $_ENV['SERVER_NAME'] = 'YOURDOMAINNAME.com';
}

wp-config.php
上記コードをwp-config.phpの上のほう(mySQLの上など)にコピペして使います。
YOURDOMAINNAME.comを使用するドメインに書き換えてね。

.htaccess

次に、ルートの.htaccessを編集します。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://YOURDOMAINNAME.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ https://YOURDOMAINNAME.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.YOURDOMAINNAME\.com
RewriteRule ^(.*)$ https://YOURDOMAINNAME.com/$1 [R=301,L]
</IfModule>

元々あった# BEGIN WordPress以下はさわらず、その上に上記コードを足してください。
こちらもYOURDOMAINNAME.comを使用するドメインに書き換えてね。

.htaccessをいじったあとは

.htaccessをいじると、WordPressの下層ページが500エラーになったりなど不安定になります。
そんな時は、ダッシュボードのパーマリンク設定ページを開き、なにも設定をいじらずに保存ボタンをクリック。
これでエラーは解消されるはず。

目次へ戻る