1.13. Apache モジュールの操作
httpd
サービスはモジュラーアプリケーションであり、多数の 動的共有オブジェクト (DSO) で拡張できます。動的共有オブジェクト は、必要に応じて実行時に動的にロードまたはアンロードできるモジュールです。これらのモジュールは /usr/lib64/httpd/modules/
ディレクトリーにあります。
1.13.1. DSO モジュールのロード
管理者は、サーバーがロードするモジュールを設定することにより、サーバーに含める機能を選択できます。特定の DSO モジュールを読み込むには、LoadModule
ディレクティブを使用します。別のパッケージが提供するモジュールは、多くの場合、/etc/httpd/conf.modules.d/
ディレクトリーに独自の設定ファイルがあることに注意してください。
前提条件
-
httpd
パッケージをインストールしている。
手順
/etc/httpd/conf.modules.d/
ディレクトリーの設定ファイルでモジュール名を検索します。# grep mod_ssl.so /etc/httpd/conf.modules.d/*
モジュール名が見つかった設定ファイルを編集し、モジュールの
LoadModule
ディレクティブをコメント解除します。LoadModule ssl_module modules/mod_ssl.so
RHEL パッケージがモジュールを提供していないなどの理由でモジュールが見つからなかった場合は、次のディレクティブを使用して
/etc/httpd/conf.modules.d/30-example.conf
などの設定ファイルを作成します。LoadModule ssl_module modules/<custom_module>.so
httpd
サービスを再起動します。# systemctl restart httpd
1.13.2. カスタム Apache モジュールのコンパイル
独自のモジュールを作成し、モジュールのコンパイルに必要なインクルードファイル、ヘッダーファイル、および APache eXtenSion
(apxs
) ユーティリティーを含む httpd-devel
パッケージを使用してビルドできます。
前提条件
-
httpd-devel
パッケージがインストールされている。
手順
次のコマンドでカスタムモジュールをビルドします。
# apxs -i -a -c module_name.c
検証
- DSO モジュールのロード で説明されている方法でモジュールをロードします。