XSERVER(エックスサーバー)にて、ルートドメイン(○○○.com)は.htaccess追記でhttp://からhttps://にリダイレクトされるようになったものの、サブドメイン(△△.○○○.com)は自動的に転送されない…といった場合の解決方法。
エックスサーバーの設定画面を写真付きで解説致します。
常時SSL化に伴うリダイレクト
リダイレクトの目的や設定は様々ですが、今回は『常時SSL化に伴い「http://○○○.com」から「https://○○○.com」へリダイレクト(http://にアクセスしても自動的にhttps://に転送する)』といった場合の説明。
常時SSL化に伴う設定変更について解説しているサイトは多数ありますので、ルートドメイン(○○○.com)に関してはサーバーパネルの.htaccessから問題なくリダイレクトできた方も多いと思います。
しかしサブドメイン(△△.○○○.com)がリダイレクトされない!と悩んでいる方はいませんか?…実は私もそうでした。なぜなら『ルートドメインで.htaccess編集すればサブドメインにも適用される』と解説しているサイトが多いんですもの。
しかしXSERVER(エックスサーバー)でサブドメインを「http://→https://」にリダイレクトしたい場合、ルートドメインで.htaccessを追記しただけではリダイレクトされません。
ルートドメインとサブドメインは別
ルートドメインでのhttpからhttpsへのリダイレクトは【サーバーパネル】の【.htaccess編集】から
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
…といった形の文字列を追記しましたが、サブドメインの場合はこれをそれぞれの.htaccessへ追記していく必要があります。
では写真付きで具体的なやり方を説明していきましょう。
サブドメインのリダイレクト設定
仮に『http://sub.jimi.com』を『https://sub.jimi.com』に自動転送されるよう設定するとします。
使用するのはルートドメインのように【サーバーパネル】ではなく【ファイルマネージャ】。
新しくなったXSERVERの管理画面でご説明すると…
【Xserverアカウント】でログインした場合、【ファイル管理】と書かれているボタンをクリックします。
ログイン画面から直接【ファイルマネージャ】にログインしてもOKです。
ファイルマネージャに入ったならば、まずはルートドメインへ。
仮に【http://sub.jimi.com】の設定がしたいならば【jimi.com】を選びます。
次に【public_html】を。
次に並んでいるフォルダから目的のサブドメインを探します。
仮に【http://sub.jimi.com】の設定ならば【sub】のフォルダを選択。
中段付近に【.htaccess】がありますが、これではありません。間違えないように。
ここで【.htaccess】をクリックし、上段メニューの【編集】をクリックします。
すると…
このように別窓で【.htaccess】が表示されます。念の為にコピーし、テキストファイル等に保存しておくと良いでしょう。
ここにルートドメイン同様、
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
を追記します。
このようになります。
ワードプレスを使用している場合、ワードプレスよりも前に追記しなければならないのはルートドメインと同じ。
最後に【更新】をクリックしてファイルマネージャは終了。目的のサイトに『http://』でアクセスし、『https://』にリダイレクトされれば完了です。
サブドメインをリダイレクト・まとめ
どうでしょうか、無事に自動でhttps://に転送されるようになりましたか?
作業そのものはとても簡単ですので、ルートドメインのリダイレクト設定ができた方ならば全く問題ないレベルだと思います。
当記事が「ルートドメインの設定はできたのに、どうしてサブドメインは自動転送されないの!?」と悩んでいた方の助けとなれば幸いです。