[Linux][apache] apacheでサブドメインでフォルダを振り分ける

| コメント(0) | トラックバック(0)
本来、サブドメインって表現はふさわしくないかもしれないけど、
http://www.example.co.jp/hoge/foo.html とか
http://bar.example.co.jp/hoge/foo.htmlってあったら、

example.co.jpとかがドメインで、wwwやbarはホスト名って呼ばれてて、
負荷分散や用途別で分けられてある複数台のサーバー機の名前を入れて区別しているんだけど、
1台のPCでも複数のアドレスを使いたい!!ってコトでできたのがVirtualHost


例えば、http://hoge.example.co.jp/にアクセしたときに/home/hoge/public_htmlを表示するには、
apacheの設定ファイルを開き、
# vim /etc/httpd/conf/httpd.conf

最後の方の、
#NameVirtualHost *:80
のコメントアウトを外し、さらにその下に、
<virtualhost *:80="">
  ServerAdmin webmaster@hoge.example.co.jp
  DocumentRoot /home/hoge/public_html
  ServerName hoge.example.co.jp
  ErrorLog logs/hoge.example.co.jp-error_log
  CustomLog logs/hoge.example.co.jp-access_log common
</virtualhost>
を追加

DocumentRootを/var/www/html以下に設定する場合はいいけど、
/home/ユーザー/~にする場合は、前回書いたSELinuxに対する対処が必要となる。



<参考サイト>
名前ベースのバーチャルホスト設定
バーチャルホストの設定



---------------追記(2009/5/4)---------------
*.example.co.jpを全部example.jpに飛ばしたいときは、ServerAliasを使う。
<virtualhost *:80="">
  ServerName example.co.jp
  DocumentRoot /home/hoge/public_html
</virtualhost>
<virtualhost *:80="">
  ServerName example.co.jp
  ServerAlias *.example.co.jp
  Redirect permanent / http://example.co.jp/
</virtualhost>

<参考サイト>
バーチャルホストの例 - Apache HTTP サーバ
DocumentRoot


トラックバック(0)

トラックバックURL: http://blog.isocchi.com/MovableType/mt-tb.cgi/242

コメントする

このブログ記事について

このページは、isocchiが2008年2月19日 20:30に書いたブログ記事です。

ひとつ前のブログ記事は「サーバー移転しました」です。

次のブログ記事は「[Linux][MySQL] ユーザーを作って専用のデータベースを与える」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

Powered by Movable Type 5.0