SSL 設定を追加するに当たって、Debian(Sarge)のファイル構成を調べて理解を深めていったら、段々その合理的な構成がわかってきた。
/etc/apache2/
sites-available/ 利用可能な仮想ホスト設定ファイルのあるフォルダ
sites-enabled/ 利用する設定のシンボリックリンクが置かれるフォルダ
mods-available/ 利用可能な追加モジュール設定ファイルのあるフォルダ
mods-enabled/ 利用する設定のシンボリックリンクが置かれるフォルダ
mods-available にはインストール済みのモジュール用の設定ファイルが置かれているが、a2enmod/a2dismod を使って使用/不使用が簡単に行える。
また sites-available に自前で VirtualHost 設定を入れておくと a2ensite XXX や a2dissite XXX のようにして設定を追加/削除できる。
たとえば ssl 関係の設定をするには /etc/apache2/sites-available/ssl を準備するだけ。これも /usr/share/doc/apache2/examples/ssl.conf.gz をコピーして一部を書き換えれば終了。SSL の場合は証明書が必要なので、予め apache2-ssl-certificate を実行しておく。
その後、
a2ensite ssl
としてサイト設定の追加、そして
a2enmod ssl
で設定終了。
この方法では Apache2 がマイナーアップグレードが行われて再インストールを行っても、sites-available/ 以下の追加ファイルはそのまま残ることになり、とても安心してソフトウェアの更新が行える。とてもありがたい。
ほかにもありがたい設定はあるんだろうけど、そもそもこうしたことを理解するのにいまいちどう調査したらよいかがわかりにくいのが Debian のキツイところだろうか。