ラック
Home > ブログ > 記事 > 2018年7月 > サブドメインありのURLも同じApacheのVirtualHostにリダイレクトさせる方法

サブドメインありのURLも同じApacheのVirtualHostにリダイレクトさせる方法

カテゴリ: サーバ

よくあることとして、「https://example.com/https://www.example.com/を同じ仮想サイトでアクセスできるようにしたい」ということがあります。これをApacheのVirtualHostでどう設定するか、というお話。

よくあるけど、やるときに「あれ、どうするんだっけ?」とよくなるのでメモしておきます。

Simple is best.

検索するといくつも方法がヒットするのですが、結果的には一行で済んだので、その方法で行きました。

VisrtualHostの設定で、下記のように1行を付け足す形です。


<VirtualHost example.com:80>
    ServerName example.com
    ServerAlias www.example.com
</VirtualHost>

ServerAliasという行を付け足して、そちらにwwwありの名前を書く。これでOKでした。

以下は他の方法ですが、行数が多いしやっていることもちょっと無駄が多そうなので止めました。

他の方法


<VirtualHost example.com:80>
    ServerName example.com
    ServerAlias www.example.com
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^www\.example\.com$
    RewriteRule ^/(.*) http://example.com/$1 [R=301,L]
</VirtualHost>

ServerAliasは同じなのですが、その後にリダイレクトの処理を書いているパターン。ServerAliasだけで事が足りるのであれば、リダイレクトはいらないのでは?と思ったり。リダイレクトすることでドメインがwwwなしに統一できるとか、そんな発想からなのでしょうか……そこまでは追っていません。

補足

上記の方法はあくまでDNSでwwwありなし共に同じWebサーバに名前解決する場合のパターンです。書かなくてもたぶん、大丈夫だと思いますが……。

参考

タグ: サーバ環境・構築,手順

 



関連する記事一覧