私は2つのサーバーdevとproductionを持っていますが、それらはかなり似ています。両方持っています
CentOS 5.6
PHP 5.2.17
インストールされているリストは次のとおりです。
yum list installed | egrep 'couch|php|mem'
couchbase-server.x86_64 1.8.0r-1 installed
libcouchbase-devel.x86_64 2.0.1-1 installed
libcouchbase1.x86_64 1.0.1-1 installed
libcouchbase2.x86_64 2.0.1-1 installed
libcouchbase2-core.x86_64 2.0.1-1 installed
libcouchbase2-libev.x86_64 2.0.1-1 installed
libmemcached.x86_64 1.0.4-3.el5 installed
memcached.x86_64 1.4.10-1.el5 installed
php.x86_64 5.2.17-7.el5 installed
php-cli.x86_64 5.2.17-7.el5 installed
php-common.x86_64 5.2.17-7.el5 installed
php-devel.x86_64 5.2.17-7.el5 installed
php-eaccelerator.x86_64 2:0.9.6.1-1.el5 installed
php-fpm.x86_64 5.2.17-7.el5 installed
php-mcrypt.x86_64 5.2.17-7.el5 installed
php-mysql.x86_64 5.2.17-7.el5 installed
php-odbc.x86_64 5.2.17-7.el5 installed
php-pdo.x86_64 5.2.17-7.el5 installed
php-pear.noarch 1:1.9.1-1.el5 installed
php-pecl-memcache.x86_64 3.0.6-1.el5 installed
php-pecl-xdebug.x86_64 2.1.2-1.el5 installed
php-xml.x86_64 5.2.17-7.el5 installed
しかし、Couchbase PHP クライアント ライブラリ v.1.1.1 を本番サーバーにインストールする際に問題が発生しました。開発者にインストールし、正常に動作しました。しかし、本番サーバーではこれを取得しました:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/couchbase.so' - /usr/lib64/php/modules/couchbase.so: undefined symbol: php_json_encode in Unknown on line 0
私はすでにそのようなエラーを抱えており、問題がphpモジュールのロードを優先する可能性があることを知っています. だから私はjson.iniファイルのjson.soの直後にcouchbase.soをロードするように設定しました。しかし、問題は残りました。
Couchbase の担当者は、php をバージョン 5.3 に更新するように言っていますが、使用している一部のソフトウェアが php 5.3 で正常に動作しないため、これを実行できません。
これを修正するにはどうすればよいですか?