• ベストアンサー

Apacheモジュールの追加方法

./configure --enable-module=so --enable-shared=max --activate-module= src/modules/php4/libphp4.a で、ApacheをLinuxへインストールしたのですが、mod_userdir.soがないというエラーになります。 モジュールを追加するにはどうすれば良いでしょうか? /etc/rc.d/init.d/httpd start Starting httpd: Syntax error on line 217 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/libexec/mod_userdir.so into server: /usr/local/apache/libexec/mod_user dir.so: undefined symbol: ap_os_is_path_absolute 又、Apacheはmodule=maxだとWWWサーバが 重くなるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • ikspiari
  • ベストアンサー率48% (29/60)
回答No.2

module=mostだと思いますが、やはりパフォーマンスは落ちると思います。 全部組み込んで後でコメントアウトしてもいいと思いますが。 DSOでコンパイルしてるんですから、 PHPは後で組み込めばいいんじゃないでしょうか? それと、mod_php入れるならZend Optimizerも入れましょう。

matchori
質問者

お礼

パフォーマンスでいろいろご教授していただき ありがとうございます。実践してみたいと思います。

その他の回答 (1)

  • astronaut
  • ベストアンサー率58% (303/516)
回答No.1

> /usr/local/apache/libexec/mod_user dir.so: undefined symbol: ap_os_is_path_absolute 「mod_userdir.soがない」 ではなくて, 「mod_userdir.so から呼ばれる関数 ap_os_is_path_absolute が定義されていない」です. apache-1.3.27 のソースを見ると,問題の関数は src/os/unix/os-inline.c で定義されていて,httpd 本体に link されるもののようです. $ strings /usr/local/apache/bin/httpd | grep ap_os_is_path_absolute とかやって,ちゃんとデーモンにシンボルが含まれていますか?もしそうなら, > /etc/rc.d/init.d/httpd start では,別の apache を起動しようとしているんじゃないかと思います.

matchori
質問者

お礼

エラーメッセージの見かたありがとうございます。 結局、shard=maxではインストールしないことで 無事インストールできました。 stringsというコマンドもあるんですね。 勉強になりました。

関連するQ&A