環境
- Vine Linux 3.1
- apache2-2.0.50-0vl4.2
- php-apache2-4.3.11-0vl2 or php5-apache2-5.0.3-0vl3
現象
# /etc/init.d/apache2 start
httpdを起動中: [Thu Jul 14 23:33:31 2005] [crit] Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP.
Pre-configuration failed
のメッセージが出て起動失敗
対策
[vine-users:070670]より引用
5.apache2 について
Vine Linux 3.1 における apache2 MPM(Multi Processing Module)のデフォルトは
worker モデルになっていますが、php のモジュール版は prefork モデル でないと
正しく動作しないようです。
apache2 を prefork MPM に変更するには、以下のようにします。
# update-alternatives –config apache2
There are 4 alternatives which provide `apache2′.
Selection Alternative
———————————————–
*+ 1 /usr/sbin/apache2.worker
2 /usr/sbin/apache2.prefork
3 /usr/sbin/apache2.threadpool
4 /usr/sbin/apache2.perchild
Press enter to keep the default[*], or type selection number: 2
Using `/usr/sbin/apache2.prefork’ to provide `apache2′.
その後、apache2 を(再)起動します。
# service apache2 restart
Vineではworkerがデフォルトなんですか?
てっきりデフォルトはpreforkだと思っていました。
憶えておこーっと。
[雑記] apt-get を利用して php5とapache2の環境をインストール
aptを利用してapache2とphp5をインストールする時にapache2がworker
の状態だと上手く作動しないために以下の手段が必要になるのでメモ。