
さくらのレンタルサーバーで常時SSL対応を行った時のサイトエラー表示対策
最近は常時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サイトを運用している場合は要チェックです。categories
- WordPress(61)
- JavaScript(49)
- Vue.js(48)
- CSS(46)
- jQuery(34)
- Nuxt.js(22)
- Sass(21)
- Gulp(17)
- webpack(16)
- PHP(14)
- HTML(14)
- GSAP(11)
- React(10)
- Vite(9)
- Pug(9)
- Laravel(8)
- Cordova(8)
- Linux(7)
- Next.js(6)
- Apache(5)
- Shopify(4)
- REST API(4)
- Node.js(4)
- Smarty(3)
- Git(3)
- JSON(3)
- その他プログラミング(3)
- Google Apps API(3)
- Bootstrap(3)
- 環境構築・システム(3)
- TypeScript(2)
- EJS(2)
- RMS(2)
- Docker(2)
- Instagram API(2)
- Excel VBA(2)
- SVG(1)
- Dart(1)
- ECカートASP(1)
- Markdown(1)
- AMP(1)
- Nginx(1)
- XML(1)
- shellscript(1)
- Ruby(1)
- MySQL(1)