ソースからインストールしたApacheにSSL機能を追加したくなったので、mod_sslモジュールをDSOで追加した。
かなりエラーが出て悩んだので、できればApacheのインストール時にconfigureで
$ ./configure --enable-so --enable-ssl
しておくのが一番です。
参考にしたとういか、助けてもらったのは以下のサイトです。エラーの内容とそのエラーを回避する方法について非常に詳しく書いてあるので詳しく知りたい方はこちらを読んでください。
apxsコマンドの指定の意味がつかめると思います。
http://d.hatena.ne.jp/rx7/20130206/p1
Apacheでmod_sslを有効にするためにはopensslが必要です。
version情報が確認できればインストールされています。
(Ubuntu12.04では元々インストール済みでした)
oepnsslのヘッダファイルの場所は環境によって異なりますが
おそらく/usr/include/openssl、/usr/local/include/openssl辺りにあると思います。
mod_sslモジュール本体であるmod_ssl.cは、インストール時に使用したApacheのソース/modules/sslにあります。
では、早速apxsでmod_ssl.cをコンパイルするのですが、mod_ssl.cだけをコンパイルすると後にsyntax検査で必要なファイルがないとかでエラーがでます。
sslディレクトリ内のすべての*.cファイルを指定する必要があることに注意。
また、コンパイルの際にHAVE_OPENSSLというマクロが定義されていないと、ヘッダファイルがインクルードされないので-Dオプションでマクロを定義します。
-lcrypto、-lsslはopensslのライブラリ指定です。必須です。
例によってapxsのオプションは-iがインストール、-aがhttpd.confに自動でLoadModuleの記述を追加、-cがコンパイル -Iでインクルードするヘッダファイルを指定します。
でSyntax OKを確認したら無事モジュールのインストールが完了しました。
かなりエラーが出て悩んだので、できればApacheのインストール時にconfigureで
$ ./configure --enable-so --enable-ssl
しておくのが一番です。
参考にしたとういか、助けてもらったのは以下のサイトです。エラーの内容とそのエラーを回避する方法について非常に詳しく書いてあるので詳しく知りたい方はこちらを読んでください。
apxsコマンドの指定の意味がつかめると思います。
http://d.hatena.ne.jp/rx7/20130206/p1
Apacheでmod_sslを有効にするためにはopensslが必要です。
$ openssl --version
version情報が確認できればインストールされています。
(Ubuntu12.04では元々インストール済みでした)
oepnsslのヘッダファイルの場所は環境によって異なりますが
おそらく/usr/include/openssl、/usr/local/include/openssl辺りにあると思います。
mod_sslモジュール本体であるmod_ssl.cは、インストール時に使用したApacheのソース/modules/sslにあります。
では、早速apxsでmod_ssl.cをコンパイルするのですが、mod_ssl.cだけをコンパイルすると後にsyntax検査で必要なファイルがないとかでエラーがでます。
sslディレクトリ内のすべての*.cファイルを指定する必要があることに注意。
また、コンパイルの際にHAVE_OPENSSLというマクロが定義されていないと、ヘッダファイルがインクルードされないので-Dオプションでマクロを定義します。
-lcrypto、-lsslはopensslのライブラリ指定です。必須です。
例によってapxsのオプションは-iがインストール、-aがhttpd.confに自動でLoadModuleの記述を追加、-cがコンパイル -Iでインクルードするヘッダファイルを指定します。
$ cd APACHE_SRC/modules/ssl
sudo /usr/local/apache/bin/apxs -i -a -c -I /usr/include/openssl -D HAVE_OPENSSL=1 -lcrypto -lssl *.c
$ apachectl -M
でSyntax OKを確認したら無事モジュールのインストールが完了しました。
コメント
コメントの投稿
トラックバック
http://kamiyasu2.blog.fc2.com/tb.php/22-cd91585c