Debian LennyでWEBサーバーを立ち上げる場合の設定

Debian Lennyのhttpd.confのファイルサイズが0バイトで、なぜ動いているんだろうと思ったら、以下の理由だったんだ・・・。

  • 標準的なhttpd.confの「本体」は、/etc/apache2/apache2.conf。
  • その、/etc/apache2/apache2.confの最終行に"Include /etc/apache2/sites-enabled/"という文が記述されていて、こいつがキモ。
  • /etc/apache2/sites-enabled/には、000-defaultというシンボリックリンクがあり、こいつは、../sites-available/defaultにリンクしている。
  • 結果的にインクルードされる、/etc/apache2/sites-available/defaultには、DocumentRoot関係の設定が記述されている。
  • て、ことで、/etc/apache2/sites-available/defaultを直接書き換えればおkってことではなく、こいつをコピーしたやつを編集する。
  • コマンド"a2ensite [ファイル名]"でコピーしたファイルを「有効」にしてやれば、シンボリックリンクが作成されて、自動的にインクルードされる。逆に、"a2dissite [ファイル名]"でシンボリックリンクが削除される。ファイル名はフルパスでないのに注意。
  • もちろん、defaultは最優先でインクルードされるので、defaultと内容が重複する場合は"a2dissite default"で標準の設定を無効にしておく。
  • /etc/apache2/apache2.confは、/etc/apache2/httpd.confもインクルードしているので、必要に応じてこっちも編集する。
大半のユーザーがいじる部分はDocumentRootとか、Directoryとか、モジュール関係だから、そいつを別ファイルにしておくってのは、かなりいい手かも。
httpd.confをゼロから書く猛者っていないよね?