如何在LINUX上安装Sphinx(ubuntu)
这是Raja,我正在使用
PHP进行Web开发.最近我应该用LINUX作为操作系统将“Sphinx”搜索安装到我的应用程序中.
我遵循了本网站提供的指示 http://www.howtoforge.com/how-to-install-sphinx-on-ubuntu-10.10 在LINUX(Ubuntu)操作系统中安装sphinx并且我在终端中测试了应用程序,我得到了这样的结果 root@dev2:/# search "test" Sphinx 0.9.9-release (r2117) Copyright (c) 2001-2009,Andrew Aksyonoff using config file '/etc/sphinxsearch/sphinx.conf'... index 'test1': query 'test ': returned 3 matches of 3 total in 0.000 sec displaying matches: 1. document=1,weight=2,group_id=1,date_added=Thu Jan 5 18:18:55 2012 id=1 group_id=1 group_id2=5 date_added=2012-01-05 18:18:55 title=test one content=this is my test document number one. also checking search within phrases. 2. document=2,date_added=Thu Jan 5 18:18:55 2012 id=2 group_id=1 group_id2=6 date_added=2012-01-05 18:18:55 title=test two content=this is my test document number two 3. document=4,weight=1,group_id=2,date_added=Thu Jan 5 18:18:55 2012 id=4 group_id=2 group_id2=8 date_added=2012-01-05 18:18:55 title=doc number four content=this is to test groups words: 1. 'test': 3 documents,5 hits 问题是,我在“/ var / www / sphinx_search”位置创建了目录,其中包含sphinx.conf,sphinxapi.php和test.php文件. sphinx.conf背后的代码是 source src1 { type = mysql sql_host = localhost sql_user = user sql_pass = pwd sql_db = test sql_port = 3306 # optional,default is 3306 sql_query = SELECT id,group_id,UNIX_TIMESTAMP(date_added) AS date_added,title,content FROM documents sql_attr_uint = group_id sql_attr_timestamp = date_added sql_query_info = SELECT * FROM documents WHERE id=$id } index test1 { source = src1 path = /var/lib/sphinxsearch/data/test1 docinfo = extern charset_type = sbcs } indexer { mem_limit = 32M } searchd { port = 9312 log = /var/log/sphinxsearch/searchd.log query_log = /var/log/sphinxsearch/query.log read_timeout = 5 max_children = 30 pid_file = /var/run/searchd.pid max_matches = 1000 seamless_rotate = 1 preopen_indexes = 0 unlink_old = 1 } 和test.php背后的代码是 require_once('sphinxapi.php'); //require_once('api/sphinxapi.php'); $s = new SphinxClient; $s->setServer("123.123.123.123",9312); // NOT "localhost" under Windows 7! $s->setMatchMode(SPH_MATCH_EXTENDED2); $result = $s->Query("group"); echo '<pre>';print_r($result); 当我试图在浏览器中运行此应用程序(http:// localhost / Raja / search_engine / sphinx /)时,会显示此错误. {"status":"failed","status_message":"connection to localhost:9312 failed (errno=10060,msg=A connection attempt failed because the connected party did not properly respond after a period of time,or established connection failed because connected host has failed to respond.)"} 由于我是狮身人面像的新手,我无法马上得到它.任何人都可以帮助我继续前进. 奇怪地寻找解决方案, 提前致谢, 解决方法
在您的搜索示例中,您使用的搜索实用程序不需要运行searchd守护程序.这就是搜索成功执行的原因.
要使用sphinx API,您需要启动searchd守护程序,例如: /path/to/searchd --config /etc/sphinxsearch/sphinx.conf 如果您使用apt-get安装了sphinx,请尝试: searchd --config /etc/sphinxsearch/sphinx.conf 之后,您可以在浏览器中尝试应用程序. 但是,我不明白这一点 $s->setServer("123.123.123.123",9312); // NOT "localhost" under Windows 7! 你说你在ubuntu下运行sphinx,而不是windows 7.因此,sphinx服务器IP应该是ubuntu主机的IP,而不是localhost. BTW,ubuntu发布旧版Sphinx,我建议从sphinxsearch.com下载最新版本.最新版本是2.0.3 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |