パスワードを忘れた? アカウント作成
218157 journal

dodaの日記: Apache 起動不可

日記 by doda

Apache を portupgrade でバージョンアップしたら起動しなくなって困っていた。
エラーログを見ると、

[Fri May 07 21:39:39 2010] [error] Unable to initialize TLS servername extension callback (incompatible OpenSSL version?)

なんて出ている。
SNI を使う為に ports から OpenSSL を入れているのだが、ビルド時はちゃんと ports で入れた方を使っているが、実行時はベースシステムの OpenSSL を使おうとしてエラーになっているようだ。

しかし、ldd mod_ssl.so を行っても

/usr/local/libexec/apache22/mod_ssl.so:
                libssl.so.7 => /usr/local/lib/libssl.so.7 (0x800b30000)
                libcrypto.so.7 => /usr/local/lib/libcrypto.so.7 (0x800c88000)
                libthr.so.3 => /lib/libthr.so.3 (0x800f21000)
                libc.so.7 => /lib/libc.so.7 (0x800638000)

と、ports で入れた OpenSSL を使うはず。
原因がわからなかったので、しばらくの間 SSL を無効にして使っていた。

昨日、ふと Apache の全てのモジュールに対して ldd をかけたら、mod_ldap.so 等がベースシステムの OpenSSL を使っている事に気が付いた。
どれも全て OpenLDAP の libldap/liblber にリンクしており、それらがベースシステムの OpenSSL にリンクしている為のようだった。
OpenLDAP を portupgrade で入れなおしたら無事に Apache が立ち上がるようになった。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

犯人はmoriwaka -- Anonymous Coward

読み込み中...