Previous topic

Redmine に HTML 表示用プラグインを入れる

This Page

CentOSの php と httpd.worker

/etc/sysconfig/httpd で HTTPD=/usr/sbin/httpd.worker としている場合、 apache では以下のようなphpエラーが発生する。

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/dbase.so' - /usr/lib64/php/modules/dbase.so: undefined symbol: core_globals in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mysql.so' - /usr/lib64/php/modules/mysql.so: undefined symbol: executor_globals in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mysqli.so' - /usr/lib64/php/modules/mysqli.so: undefined symbol: executor_globals in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/pdo.so' - /usr/lib64/php/modules/pdo.so: undefined symbol: executor_globals in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/pdo_mysql.so' - /usr/lib64/php/modules/pdo_mysql.so: undefined symbol: php_pdo_register_driver in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/pdo_sqlite.so' - /usr/lib64/php/modules/pdo_sqlite.so: undefined symbol: executor_globals in Unknown on line 0

これはCentOS付属のPHPがスレッドによる処理の引渡に対応していないのが原因らしい。 これを解決するためには、各モジュールのconfigureを –with-tsm-pthreads–enable-maintainer-zts してやる必要が有る様だが、SRPMから作り直す必要がある。

とりあえず今は HTTPD=/usr/sbin/httpd.worker をコメントアウトしたままにする。