Red Hat系のLinuxのApache2を設定したことのある方にとって、DabianのApache2の設定ファイルの構成は、当初面食らう。
Red Hat系の場合、主たる設定ファイルは、/etc/httpd/conf/httpd.confであり、includeされるファイルはconf.d/下に置かれる。
Debianの場合、主たる設定ファイルは、/etc/apache2/apache2.confであり、includeされるファイルは、mods-enabled/、sites-enabled/、conf.d/ の各ディレクトリ下に置かれるファイルと ports.confファイルである。
Red Hat系のhttp.confの記述内容が、Debianでは、apache2.confとmods-enabled/、sites-enabled/下のファイル、ports.confに分かれて記述してある。実際に設定してみて、Debianの設定方法になれるとわかり易い。特に、サーバを持たないクライアントにホームページをホスティングする場合などは、Debianの構成が管理しやすいように思った。

DebianのApache2設定ファイル

設定ファイル 説明
/etc/apache2/apache2.conf 主要なApache2設定ファイル
Section1:Global Environmentについて記述
/etc/apache2/mods-enabled/ 現在有効なApache2のモジュールを置くディレクトリ
普通は、mod-available/ディレクトリにリンクを貼ることで有効にする
/etc/apache2/mods-available/ Apache2のインストールされたモジュールを置くディレクトリ
mod-enabled/ディレクトリにリンクを貼ることで有効になる
/etc/apache2/sites-enabled/ 現在有効なWebサイトの固有設定を置くディレクトリ
普通は、sites-available/ディレクトリにリンクを貼ることで有効にする
/etc/apache2/sites-available/ 利用可能なWebサイトの固有設定をおくディレクトリ
sites-enabled/ディレクトリにリンクを貼ることで有効になる
/etc/apache2/ports.conf デフォルトではポート番号80が設定されている
/etc/apache2/conf.d/ Apache2の追加設定を置くことができるディレクトリ
デフォルトではcharsetのファイルが置かれている

Debianの考え方は、「必要なパッケージ、モジュールのみインストールする、あるいは有効にする」である。このことは、モジュールの取り扱いにも現れていて、各Webサーバの個別ニーズにより、使用するモジュールを個々に選択し、有効にする必要がある。Red Hat系のLinuxの場合、一般的に必要であろうと思われるモジュールを、ディストリビューターが判断して前もって有効にしてある。
mods-available/またはsites-available/に格納されているモジュールまたはWebサイトの個別設定ファイルを、専用コマンドでリンクをリンクを貼ることで有効化している。

TOPへ

初心者の私が公開するサーバなので、正しく設定しないとセキュリティ上問題が生じやすいアプリケーションのインストールは避けることにしました。Dabian GNU/Linux4.0('etch')をインストールに際し、必要最低限のパッケージをインストールする方法をとりました。
公開するWebは、一方向のダウンロードのみとし、クライアントが入力できる掲示板などは、用意しないことにしました。

仮想マシンVMware Serverを使用したテスト環境なので、前ページの「複数サイトの計画」をテスト環境用にアレンジした。これをベースにApache2の設定を行う。

URL ドキュメント IPアドレス ポート 管理者
www.localdomain /var/www/ 192.168.1.48 80 etch
www.localdomain/nature/ /home/etch/public_html/nature/ 192.168.1.48 80 etch
www.localdomain/member/ /home/etch/public_html/member 192.168.1.48 8080 etch
www.linux.localdomain /home/debian/public_html/ 192.168.1.49 80 etch

正式に公開するWebサーバを構築するときは、localdomainを正式のドメインに、プライベートIPアドレスを正式の固定IPアドレスに置き換えて考えればよい。

TOPへ

(注意)Debian Lennyの場合、Apache2の設定ファイルの構成が変更になっています。
Apache2の設定ファイル(etch版とlenny版の違い」にlenny版のApache2設定例を記述しています。ご参照下さい。

1 /etc/apache2/apache2.confをチューンニングする前に、必ずバックアップを取っておく。
debian:/etc/apache2# cp apache2.conf apache2.conf-backup
2 今回のサーバ構築は、自分のWebを発信するだけの自宅サーバであるので、必要最小限のApache機能を動かす設定にした。

(実際にサーバを運用する時は、使用するApacheの機能が将来変更される可能性が高いので、コメントアウト#で行を無効にしておく方が変化に対応し易い。)

3 今回チューニングするに当り、apache2の動作結果が明確に分かるように、apach2.confは必要な行のみを残す方法をとった。
4 SSLの機能は使用しないので、apache2.confの設定からはずした。


次は、Apache2の各種設定を、Apache2の設定(2)でおこなう。

TOPへ