我正在用PHP测试Sphinx(教程:http://www.siteduzero.com/informatique/tutoriels/creer-un-moteur-de-recherche-avec-sphinx-et-php)
如果我像这样运行"search":
search -i news navigateur
我有以下错误:
index 'news': search error: .
索引器工作正常:
$ sudo indexer news
使用配置文件'/usr/share/php/sphinx/etc/sphinx.conf'…索引索引"新闻"…
Sphinx 2.0.6-release (r3473)Copyright (c) 2008-2012,狮身人面像科技公司(http://sphinxsearch.com)收集了57个文档,0.7 MB排序0.1 Mhits, 100.0%
共完成57个文档,689264字节,共计0.050秒,13684561字节/秒,1131.67 docs/sec
共3次读取,0.000秒,115.5 kb/call avg, 0.1 msec/call avg
总共9次写,0.000秒,83.5 kb/call avg, 0.0 msec/call avg
并且,使用API进行测试时,PHP代码没有返回任何内容。有人已经遇到这个错误了吗?
下面是配置文件:
index news {
source = news path = /usr/share/php/sphinx/var/data/news
}
indexer {
mem_limit = 32M
}
searchd {
port = 3312 log = /usr/share/php/sphinx/var/log/searchd/searchd.log query_log = /usr/share/php/sphinx/var/log/searchd/query.log pid_file = /usr/share/php/sphinx/var/log/searchd/searchd.pid
}
来源新闻{
type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = siteduzero_sphinx sql_query_pre = SET NAMES utf8 sql_query = SELECT id' , categorie' , titre' , contenu FROM news sql_attr_uint = categorie sql_query_info = SELECT titre FROM news WHERE id=$id }
谢谢。
法布里斯
刚刚遇到了同样的问题。最后一个配置参数中的邪恶根源。这个命令会正常工作:
search -i news --noinfo navigateur
或者你可以从配置中删除这个字符串:
sql_query_info = SELECT titre FROM news WHERE id=$id
如果你不需要的话
这是search
实用程序中的一个错误。
好消息是search
实用程序,只是一个测试工具,所以它并不重要。它实际上除了测试之外没有其他用途。
关于你的API问题,你有searchd
守护进程运行吗?
你应该使用getLastError和getLastWarning来调查为什么…