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サイトの個別設定ファイルを、専用コマンドでリンクをリンクを貼ることで有効化している。
初心者の私が公開するサーバなので、正しく設定しないとセキュリティ上問題が生じやすいアプリケーションのインストールは避けることにしました。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アドレスに置き換えて考えればよい。
(注意)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)でおこなう。