Sphinx:服务器向客户端发送未知的charset。请向开发人员报告

时间:2017-02-08 11:18:45

标签: php mysqli sphinx

我使用Sphinx 2.0.5,当我通过PHP调用indexer时,我收到错误 Sphinx:服务器发送的客户端未知的charset。请向开发者报告。可能是什么问题?

服务器PHP版本是5.6.30

尝试使用mysql或mysqli通过PHP连接Sphinx时,只会出现问题。

$link = mysqli_connect ( "127.0.0.1", "root", "", "", 9306 ) or sendErrorMail(array("subject"=>"Failed to connect to sphinx ","sql"=>"","error"=> mysqli_connect_error()));

OR

$link = mysql_connect ( "127.0.0.1:9306", "", "" ) or sendErrorMail(array("subject"=>"Failed to connect to sphinx","sql"=>"","error"=> mysql_error()));

是否需要更改任何配置? 我错过了什么?有人可以帮忙吗?

下面的代码工作正常:

    $cl = $this->sphinxclient;
    $cl->resetFilters();
    $cl->SetMatchMode(SPH_MATCH_EXTENDED2);
    $cl->setFilter('eventid',array($param['eventId']));
    $result = $cl->Query('','indexerName');

在Linux中,使用以下命令正确连接Sphinx:

mysql -h 127.0.0.1 -P 9306

1 个答案:

答案 0 :(得分:0)

解决了。 可能这种情况发生在PHP版本> 5.4。 在Sphinx安装包中有一个文件" searchd.cpp" 。 在那里服务器语言被指定为 \ x00 将其更改为 \ x21 并重新安装sphinx。问题将得到解决。