owned mediaウェブ制作に役立つコンテンツを発信中!

さくらのレンタルサーバーで常時SSL対応を行った時のサイトエラー表示対策

最終更新日: Update!!
最近は常時SSLの重要性が高まってきますが、さくらインターネットのレンタルサーバーでWordPressサイトを使用している場合には、常時SSL対応時に少し注意が必要です。SSL非対応からの変更になると常時SSL対応後に外部ファイルパスが変わらないなどで表示がおかしくなってしまう場合もあります。   そこで下記コードをWordPressの設定ファイルである「wp-config.php」を追記します。 【wp-config.php】(一部抜粋)
if( isset($_SERVER['HTTP_X_SAKURA_FORWARDED_FOR']) ) {
   $_SERVER['HTTPS'] = 'on';
   $_ENV['HTTPS'] = 'on';
   $_SERVER['HTTP_HOST'] = '【DOMAIN NAME】';
   $_ENV['HTTP_HOST'] = '【DOMAIN NAME】';
   $_SERVER['SERVER_NAME'] = '【DOMAIN NAME】';
   $_ENV['SERVER_NAME'] = '【DOMAIN NAME】';
 }
  これでサイトが正常に表示されるようになります。しかしこのままでは正しくリダイレクトしてくれません。。 httpsへのリダイレクトをするために.htaccessに下記のコードを追記します。 【.htaccess】(一部抜粋)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://【DOMAIN NAME】/$1 [R=301,L]
</IfModule>
  もしWordPress外に下層ディレクトリで静的サイト運用している場合は、上記の方法ですとうまくリダイレクトされない恐れもありますので、下記のような表記がいいかもしれません。 【.htaccess】(一部抜粋)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
  さくらインターネットのレンタルサーバーでWordPressサイトを運用している場合は要チェックです。
  • はてなブックマーク
  • Pocket
  • Linkedin
  • Feedly

この記事を書いた人

Twitter

sponserd

    keyword search

    recent posts

    • Twitter
    • Github
    contact usscroll to top
      • Facebook
      • Twitter
      • Github
      • Instagram