導入編 | |
FreeBSDルーター編 | |
ローカルDNSサーバー | |
フレッツADSLで固定IP | |
ドメイン取得とDNS運用 | |
メールサーバー | |
>>> | Webサーバー |
30 Aug 2011 | 若干追記。 |
29 Aug 2011 | 新規作成。 |
※ほとんど覚え書き。
WebサーバーとしてApache HTTP Serverを入れてみる。 といっても、基本は
$ ./configure $ make # make install
だけ。ただ、後々のことを考えると、
$ ./configure -enable-so
くらいはしておいた方がいい、かもしれない。
放っておくと/usr/local/apache2
以下にインストールされる。
設定ファイルが/usr/local/apache2/conf
に、ログが/usr/local/apache2/logs
になる。
個人的に、設定ファイルは/usr/local/etc/apache2
に、ログは/var/log/apache2
に実体ができて欲しい。
設定ファイルが/usr/local/etc
以下にまとまっていると設定ファイルをバックアップするのが楽なのと、/var
はパーティションを分けてあるから(ログ書いてる途中にシステムがトンでも、/
と/usr
は助かる可能性が高い)。
なので、設定ファイルとログの実体を/usr/local/etc/apache2
と/var/log/apache2
に移して、/usr/local/apache2
からシンボリックリンクを張るようにしている。
./configure --sysconfdir=/usr/local/etc/apache2とかやってもいいんだけどね、調べるのが面倒くさい・・・。
実は./configureすると、config.nice
というファイルができる。
中を見るとシェルスクリプトになっていて、configureした際のコマンドラインが書いてあって、後ろに$@
が書いてある。
だから、./config.nice --hogeとすると、最初にconfigureしたオプションに--hoge
が追加されてconfigureされる。
で、config.nice
にも--hoge
が追加されるので、さらにオプションを追加していくこともできる。
最初に./configure --enable-soとしてあれば、例えばmod_headersを後から組み込みたければ、
$ ./config.nice --enable-headers $ make # make install
でよい。
これはマイナーバージョンアップのときにも使える。
新しいバージョンのソースツリーを展開したら、古いソースツリーにあるconfig.nice
を新しいソースツリーにコピーして使えばよい。
new$ cp ../old/config.nice . new$ ./config.nice new$ make new# make install
オプションを削除したい場合はconfig.nice
を編集すればよい。
[ユーザーディレクトリ]
http://www.example.jp/~user/
でアクセスするアレ。
~
込みのURLでいいならばUserDir
ディレクティブを使えばよいが、~
が気に入らない場合はAlias
ディレクティブを使ったほうがよい。
その方がURLも自由になるし、複数のディレクトリをひとりのユーザーに割り当てることもできる。
Webサイトを運用しないユーザーの分はAliasを書かなければいい。
なお、UserDir
ディレクティブのデフォルトは、2.0系では~user
というURLを~user/public_html
にマップするようになっていたが、2.2系になってdisabledとして扱われるようになった。
なので、2.2系で~user
の形のURLを使いたい場合は明示的にUserDir
を書く必要がある。
[隠したいファイル]
.htaccess
がその筆頭。
多分サンプルにAccessFileName
ディレクティブが書いてあると思う。
それに加え、cvsでサイトをアップデートする場合はCVS
ディレクトリも隠したいので、
<Directory ~ "/CVS/"> Order allow,deny Deny from all AllowOverride None </Directory>
などとしておく。
UserDirやAliasで指定したディレクトリに公開するファイルを置く。 ひとつひとつ手作業でFTPやscpしてもいいが、 sambaでフォルダごとコピーしてもいいし、FTPで変更のあったファイルだけを更新するようなクライアントも公開されている。 このあたりはプロバイダのレンタルWebスペースとほとんど同じ。
HTMLファイルのバージョン管理を行っている場合、エクスポートやチェックアウトを使う、という手もある。
チェックアウトした場合、手元でHTMLファイルを変更したら、それをチェックインしてサーバー側でアップデートすればサイトの更新が終わる。
さらに改行コードの変換まで勝手にやってくれるというおまけ付き。
この場合、CVSならCVSディレクトリを、Subversionなら.subversionディレクトリを<Directory>
で見えないようにしておくといい。
バージョン管理システムというと最近はSubversionが主流だが、Subversionは作業ディレクトリにリポジトリのコピーを置こうとするので、この用途にはCVSの方が向いている。
Copyright (C) 2011 You SUZUKI
$Id: httpd.htm,v 1.8 2011/09/23 13:37:15 you Exp $