10.7. モジュールの追加

Apache HTTP サーバー はDSO(Dynamically Shared Objects) と言うモジュールをサポートします。これは必要に応じてランタイムに簡単にロード することができます。

Apache Project は、総括的なDSOドキュメントを次のサイトで提供しています。 http://httpd.apache.org/docs-2.0/dso.html. また、http-manualパッケージがインストールされている場合、DSO関連のドキュメントは http://localhost/manual/mod/ で御覧下さい。

Apache HTTP サーバーで、DSOを使用するには、/etc/httpd/conf/httpd.confの 中のLoadModuleディレクティブで、DSOが指定される必要があります。 もし、このモジュールが別のパッケージで提供されている場合、/etc/httpd/conf.d/ ディレクトリ内のモジュール設定ファイルの中にその行が表示されなければなりません。 LoadModuleディレクティブに関する詳細は項10.5.15で 御覧下さい。

http.confからモジュールの追加や削除をする場合、 Apache HTTP サーバーは、項10.4で示してあるように リロード又は、 再スタートされる必要があります。

新しいモジュールを作成している場合、インクルードファイル、ヘッダファイル、 APache eXtenSion(/usr/sbin/apxs) アプリケーション(これは DSOのコンパイルにインクルードファイルとヘッダ ファイルを使用します。)を収納しているhttpd-develパッケージを 先にインストールします。

モジュールを書き終ると、/usr/sbin/apxsを使用して、Apacheの ソースツリーの外でモジュールソースをコンパイルします。/usr/sbin/apxs コマンドの使用法に付いてはオンラインのApache ドキュメントを以下のサイトで確認してください。 http://httpd.apache.org/docs-2.0/dso.html apxsについては、その manページを御覧下さい。

コンパイルが終了すると、そのモジュールを/usr/lib/httpd/ ディレクトリの中にいれます。その後以下の構成を使用して、LoadModuleの 行をhttpd.confに追加します:

LoadModule <module-name> <path/to/module.so>

上記の例では、<module-name>をモジュール名で入れ換え、 <path/to/module.so>をDSOへのパス名で入れ換えます。