以前、付き合いがあった業者さんから、
バーチャルホストの設定を行ったんですけど、URLにエイリアス(www)を付けてアクセスすると、サイトが表示されなくなりました、、、
という相談が。
※http://sample.com/ では問題なく表示されてます。
大概、こういう場合には、
・サブドメイン(www.sample.com)のレコードを追加されてない
か
・Apacheのconfファイル(httpd.conf)に、ServerAliasというディレクティブを設定されていない
かのどちらかです。
サブドメイン(www.sample.com)のAレコードを追加
レコードの設定が抜けていたのであれば、
というAレコードを、ドメイン管理元のコントロールパネルから登録して、しばらく待てばOKです。
※IPアドレスの部分は、ご自分の環境に合わせて、設定して下さい。
因みに、レコードの設定になるので、登録したレコードが完全に浸透するまでには、
しばらく時間が掛かる場合もあります。
もし、設定内容がなかなか反映されなくても、慌てずに、しばらく待つようにして下さい。
ServerAliasディレクティブの設定
もし、
httpd.confファイルのServerAliasディレクティブの設定が抜けているのであれば、
Apacheのconfファイルを開いて、追加します。
ServerAliasディレクティブを設定することで、
複数のサブドメインから同一のコンテンツにアクセス出来るようになります。
まずは、
# vi /etc/httpd/conf/httpd.conf
で、ファイルを開いて、以下を追記。
↓
既存の記述と合わせると、以下の様な記述になると思います。
<VirtualHost *:80>
ServerName sample.com
ServerAlias www.sample.com
DocumentRoot /var/www/html
</VirtualHost>
httpd.confを編集した後は、必ず、リロードで設定内容を読み込み直して下さい。
# service httpd reload ← リロード コマンド
これで、ServerNameに設定したホストと同様のコンテンツ(http://sample.com/)を、
http://www.sample.com/でも表示できるようになります。
実際に、http://www.sample.com/ にアクセスしてみて、
表示されればOKです。
因みに、エイリアスを複数設定する場合には、
というように、
半角スペースで区切って設定して下さい。
私は、ホームページというのは、wwwあり、wwwなしのどちらでもアクセスできるというイメージを持っているので、
必ず、
http://sample.com/
と
http://www.sample.com/
の両方にアクセスできるように設定します。
ただし、URLが分散するのは、SEO上、あまり良くないです。
必ず、どちらか一方のURLに統一すように、リダイレクト設定を行っておきましょう。
この記事へのコメントはありません。