現在サイトの運営は、レンタルサーバーにエックスサーバーを利用しています。
これに、サブドメインを2つ使ってサイトの運用です。
このサブドメインは、とても便利なのですが、urlを検索欄にhttps://部分を外して直打ちすると、
と表示されてしまいます。
どうやら、ブラウザがwwwを補完してしまうことが原因の様子。
urlを直打ちすることは少ないかもしれませんが、作ったサイトが見られないことになってしまいます。
サブドメインとは
サブドメインとは、メインのドメインから派生したドメイン。
サブカテゴリーのようなイメージです。
例えば、私は「不正調査・不正防止セミナー」のサイトを作っていますが、ブログの投稿もしています。
この場合、1つのドメインで固定ページと投稿ページを作成するのが基本なのだろうと思います。
ただ、そうすると固定ページと投稿ページで、ヘッダー、キーカラーを分けることができません。
多分できるのだと思いますが、現在の私の技術では無理です。
そこで利用したのが、サブドメイン。
私の場合、メインのドメインは
htts://countup.site
これに
htts://blog.countup.site
htts://com.countup.site
というサブドメインをぶら下げて作っています。
すると、サブとはいいながら、それぞれ違うurlを持つため、別個のサイトのようにHPが動作をしてくれます。
会社のサイトにブログを作るときなど、ドメインをもう一つ作るより、サブドメインの方がコスト面でも、メンテナンス面でも便利です。
サブドメインの作り方
エックスサーバーでサブドメインをつくるのは、それほど難しいことではありません。
サブドメイン設定で、作成します。
ここをクリックして、サブドメインを設定して終了。
約1時間くらいで反映されます。
wwwではアクセスできない
ここで作成されるサブドメインのurlは
htts://blog.countup.site
htts://com.countup.site
となります。
htts://www.blog.countup.site
htts://www.com.countup.site
のように、wwwが付くことはありません。
当然のことながら、wwwを付けた場合、冒頭のようなエラーとなってしまいます。
サブドメインをさらにつくる
考え方によっては、wwwが付いていても、いなくても大きな問題はないかもしれません。
むしろ、wwwが付いていないurlの方がシンプルでいいような気もします。
また、サイトは検索サイトから入ってくることがほとんどです。
私も普段見るサイトのurlを気にしたことはありません。
wwwがなくても問題は少ないのかもしれませんが、ブラウザがwwwを補完したりすると、存在しないHPと思われるのも心外。
そこで、いくつか方法を調べてみました。
その中で、私でも対応できそうだったのがwwwをつけたサブドメインをつくること。
そこからwwwの付いていないサブドメインに転送します。
具体的には、
https://www.blog.countup.site → https://blog.countup.site
とサイト転送をさせます。
サイト転送の設定もエックスサーバーのパネルで可能。
サイト転送設定で行います。
ここから入ります。
そして、リダイレクト先を
とすればwwwで入力しても、wwwの付いていないサイトに移ることができます。
しかし404エラーが
しかし、この方法でリダイレクトした場合、
となってしまいます。
すべての場合でこうなるのかはわかりませんが、私の場合はエラー。
よくみると、サイトのurlにindex.htmlが付加されています。
これだと私の意図するところと違ってきます。
404エラーでは、不完全なサイトになってしまいます。
これなら転送させない方がマシです。
indexを外すには
このindexは要らないんだけどと思いながら、さらに調べて行くと、.htacessファイルを編集すればindexなしで遷移させることができるようです。
ファイルマネージャーから入ってpublic_html→wwwのサブドメインに進みます。
先ほど転送設定をしたので .htacessファイルがすでに作成されています。
ここに、転送時にはサイトのurlそのもの、つまりindex.htmlに行かないように指示を加えます。
結果として、.htacessファイルは、
となります。
これで無事に完了です。
本日のまとめ
サイト開設から間もなく、小さなわからないことが続々でてきます。
今回のトラブル回避も約半日がかりで解決。
サブドメインを使って、私と同様の問題に当たった方の参考になれば幸いです。
※なお、上記内容は、私の一経験を書いたものです。
動作を保証するものではない点、ご承知おき願います。