SSLが当たり前になってきた昨今だが、自分はずっとめんどくさくて無視し続けていた。
コロナのせいで暇が増えたので、今のうちに少しでも後伸ばしにしていたことをしとこうと設定する。
調べてやってみると簡単だった。
やることは簡単なのに調べてると難しくてうるさい書き方の記事が多かったので、超簡潔にメモっとく。
エックスサーバーでのワードプレスのSSL化の手順は、
サーバーパネル→ワードプレス編集→.haaccess編集の3つOK。(2020年現在)
エックスサーバーでのSSL化(https)の方法
エックスサーバー「サーバー管理」
まずはエックスサーバーにログイン。
「サーバー管理」から「SSL設定」に。
「SSL設定」に入るとドメイン一覧が表示されるので、自分がSSL化したサイトのドメインを選ぶ。
「独自SSL設定追加」をクリックして、「追加」をクリックする。
これで終了。
反映までに最大で1時間はかかるそう。体感的にはもっと早いけど、重たい時はそれぐらいかかるということか。
ワードプレス「設定」
SSL化設定したいワードプレスにログイン。
「設定」の「一般」をクリック。
「WordPressアドレス(URL)」と「サイトアドレス(URL)」の欄の「http://」の部分に「s」を追加し「https://」にする。
「変更を設定」をクリックすれば終了。
「変更を設定」をクリックした後は、勝手に一旦ログアウトになるが、正常な動作なので気にしなくて平気。
再度、ログインしておきましょう。
URLの部分を間違えるとややこしいので慎重に行うこと。
たかが「s」を追加するだけのことなので大丈夫だと思うが。
htaccessの編集
再度、エックスサーバー にログインして、「サーバー管理」に入る。
「.htaccess編集」をクリック。
するとドメインが選べる画面が出るので、そこでSSL化したいサイトのドメインをクリック。
ドメインをクリックすると、
SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode=off
SetEnvIf Request_URI ".*" Ngx_Cache_StaticMode# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
とコードが表示される。
この一番上の部分に、
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
というコードを追加する。
追加すると最終的に、
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode=off
SetEnvIf Request_URI ".*" Ngx_Cache_StaticMode# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
という形になっているはず。
これでSSL化の前設定はOK。
テストにアクセス
最初のエックスサーバーでの設定は反映されるまでに最大で1時間程度かかるそうなので、1時間経過したらテストにアクセスをしてみると良い。
これまでにhttp://だったURLの記事にアクセスすると、自動的に「https://」のURLに飛ぶようになっていればOK。