Check out the Latest Articles:
Sphinx als PHP-Modul einbinden

Sphinx als PHP-Modul zu erzeugen ist wichtig, um auf die Sphinx-API über PHP-Methoden zugreifen zu können.

So wirds gemacht :

tar -xzvf sphinx-0.9.8.1.tar.gz
cd sphinx-0.9.8.1/api/libsphinxclient/
./configure && make install

Danach kann PECL benutzt werden, um das PHP-Modul zu erstellen:

pecl install sphinx-beta

Bei der Version 0.9.9 gab es zumindest bei mir einen Fehler beim Kompilieren.

Im Sphinx-Forum gibt es einen Tipp dazu:

Here are the commands I used to install libsphinxclient and before this I successful
installed sphinx:
cd /path/to/sphinx/src/api/libsphinxclient/
sudo sh /path/to/sphinx/src/api/libsphinxclient/.buildconf.sh
sudo ./configure
sudo make
sudo make install

But when I used “sudo make” I got this error:
sphinxclient.c:1216: error: static declaration of ‘sock_close’ follows non-static
declaration
sphinxclient.c:280: note: previous declaration of ‘sock_close’ was here

So I checked the file.

On line: 280

void sock_close ( int sock );

On line: 1216

static void sock_close ( int sock )
{
#if _WIN32
closesocket ( sock );
#else
close ( sock );
#endif
}

I changed the line 280 to:

static void sock_close ( int sock );

Das hat den Fehler bei mir beseitigt. Nun muss nur noch nach der Modul-Erstellung mit PECL unter etc/php5/apache2/php.ini
folgender Eintrag eingefügt werden:

[sphinx]
extension=sphinx.so

Das wars. Nach einem Neustart des Apache-Servers kann nun die PHP-API für Sphinx benutzt werden.
phpinfo() sollte nach der Installation diesen Eintrag aufweisen:

sphinx
sphinx support enabled
Version 1.0.3
Revision $Revision: 292826 $

Wer neben der PHP-API auch SphinxSE (also die Sphinx-Engine für MySQL) verwenden möchte, dem sei dieser Artikel ans Herz gelegt.

Falls beim Kompilieren von Sphinx unter Ubuntu 9.10 ( Karmic) folgende Fehlermeldung erscheint:
“Check that you do have MySQL include files installed. The package name is typically ‘mysql-devel’ ”

Folgender Befehl sollte das Problem lösen:
apt-get install libmysql++-dev

Unter sorgalla.com wird auch beschrieben, wie SphinxSE mit dem Zend Framework integriert werden kann. Feine Sache!

Enhanced by Zemanta


  1. Suchen mit Wildcards und nur in definierten Feldern mit Sphinx… | uzed?

    [...] Installation findet ihr eine recht nette Anleitung findet man beim semanticblog und auf [...]



Blogverzeichnis - Blog Verzeichnis bloggerei.de   Blogverzeichnis   Blog and ping   Blog Top Liste - by TopBlogs.de   Bloggeramt.de   Blog Directory   powered by rankingcloud