apxsによるmod_sslの追加インストール

Apache HTTP Server (httpd) のmod_sslモジュールを,apxsを使って後から追加インストールする。

apxsの基本的な使い方は「apxsによるhttpdモジュールのビルド方法」を参照する。

まずOpenSSLを事前にインストールしておく (参考: インストール: OpenSSL | 安全なWebの根幹を担う暗号化ライブラリー)。

Apache HTTP Serverのインストール」を参考に$LOCAL/src/httpdにソースコードをダウンロードしているとする。

以下のコマンドでmod_sslをビルド・インストールする。

cd $LOCAL/src/httpd/modules/ssl
apxs -aci -I ../md -lssl *.c

コマンド実行後,適当なhttpdのコマンドを実行して問題ないかを確認する。例えば以下のコマンドを実行する。

apachectl configtest

今回はオプションに-I ../md -lsslを指定した。

-I ../mdがないと以下のエラーが出てコンパイルに失敗した。

ssl_engine_init.c:33:10: fatal error: mod_md.h: No such file or directory
 #include "mod_md.h"

-lsslがないと,httpdの実行時に以下のエラーが出る。

httpd: Syntax error on line 153 of /usr/local/stow/httpd-2.4.39/apache2/conf/htt
pd.conf: Cannot load modules/mod_ssl.so into server: /usr/local/stow/httpd-2.4.3
9/apache2/modules/mod_ssl.so: undefined symbol: CRYPTO_free

-lのオプションは「apxsのオプション | インフラ | DoRuby」などにあるように,-lsslの他に-lcrypto -ldl -lzなど指定されている情報を見かけたが,-lsslだけ指定すれば最低限問題なかった。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です