VineLinuxで、apache1+PHP4からapache2+PHP5へ
ちょっと悩んだのでメモメモ。
- 前提:aptで、apache1+PHP4を入れている状態で、aptでapache2に移行する
apt-shellでインストールしたもの(依存で追加されたものも含む)
apache2
apache2-apr
apache2-apr-devel
apache2-devel
apache2-manual
mod_perl2
mod_ssl-apache2
openldap
php5-apache2
php5
php5-pear
php5-mysql
php5-pdo
sqlite3
で、/etc/rc.d/init.d/apache2 ができあがったので
apache2 start としたところ、
httpdを起動中: [Mon Mar 05 12:31:45 2007] [crit] Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP.
どうやらこれはVineの人がよくはまる事例らしく、
/sbin/update-alternatives --config apache2
として
2 /usr/sbin/apache2.prefork
を選ぶと良いらしく、試したところすんなり起動
その後、pukiwikiは問題無く動いたんですが、OpenPNEではまり。
最初はDBが開けないらしいエラー。その時はphp5-mysqlを入れ忘れていたので
こちらを入れてすんなり解決。
さらにその後、OpenPNEの書き込みで文字化けが発生。
これは、httpd.confで対処。
#AddDefaultCharset ISO-8859-1 AddDefaultCharset off
として、
php_value default_charset UTF-8 php_value mbstring.language neutral php_value mbstring.internal_encoding UTF-8 php_value mbstring.http_input auto php_flag mbstring.encoding_translation Off php_value mbstring.detect_order auto php_value output_handler none
を追加。
ひとまず動くようになりました。