Couchbase PHP extension on CentOS 5.8 with Zend Server and PHP 5.4

Can you try, as much as possible, resetting to stock Centos 5.8 and installing all needed tools (PHP, nginx, etc.) from yum using the Couchbase centos55 repo and the EPEL + remi repos.

[root@localhost ~]# yum list installed | egrep 'php|couch|vbuck’
couchbase-server.x86_64 1.8.1-937 installed
libcouchbase-devel.x86_64 2.0.1-1 installed
libcouchbase2-core.x86_64 2.0.1-1 installed
libvbucket1.x86_64 1.8.0.4-1 installed
php.x86_64 5.3.15-1.el5.remi installed
php-cli.x86_64 5.3.15-1.el5.remi installed
php-common.x86_64 5.3.15-1.el5.remi installed
php-devel.x86_64 5.3.15-1.el5.remi installed
php-fpm.x86_64 5.3.15-1.el5.remi installed
php-pear.noarch 1:1.9.4-11.el5.remi.1 installed
php-pecl-igbinary.x86_64 1.1.1-2.el5.remi installed
php-pecl-memcached.x86_64 2.1.0-4.el5.remi installed
[root@localhost ~]# ls /etc/yum.repos.d/
aegisco.repo CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo couchbase.repo epel.repo epel-testing.repo rbel5.repo remi.repo
[root@localhost ~]# cat /etc/yum.repos.d/remi.repo
[remi]
name=Les RPM de remi pour Enterprise Linux $releasever - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/$releasever/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/remi/mirror
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
failovermethod=priority
[remi-test]
name=Les RPM de remi en test pour Enterprise Linux $releasever - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/$releasever/test/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/test/mirror
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
[root@localhost ~]# cat /etc/yum.repos.d/couchbase.repo
[couchbase]
name = Couchbase package repository
baseurl = http://packages.couchbase.com/rpm/5.5/x86_64
gpgcheck = 1
gpgkey = http://packages.couchbase.com/rpm/couchbase-rpm.key
[root@localhost ~]#

I would recommend trying a clean slate as much as possible, and use the above well-known repos for packages. It should work fine together. You shouldn’t need to compile anything from source, although I have tested building php-ext-couchbase from the git master branch as well. I have not gone down the trail of building PHP from source, etc., but the above combo should just work, using only yum for installing packages (and just copying the couchbase.so from the Couchbase PHP client lib to the appropriate place for PHP to find it).

Let us know if this is a feasible approach for you to take, to get to a known and sane environment.
Finally, if you get the couchbase extension to load OK, but are hitting other problems, maybe try running a very simple program from the command line under ‘strace’ and post the results:

Couchbase Server PHP Test

<?php $cb = new Couchbase("127.0.0.1:8091", "Administrator", "password", "default"); $cb->set("a", "OSDIFOISJDFOIJ"); echo("The value for 'a' is: "); var_dump($cb->get("a")); ?>

strace php cb-simple.php > strace.out 2>&1

Post the strace.out file, after ensuring that it has something possibly meaningful in it. You might try changing the username, password, and bucket settings if needed, etc.

Tim