0

SphinxAPIを使用してPHPからプログラムでSphinxにアクセスする場合、queryコマンドにより、Webブラウザーは約30秒間考えてから、ログメッセージが見つからない(またはタイムアウトになる可能性がありますか?)失敗します。だからここに私のコードがあります:

$cl = new SphinxClient();
$cl->SetServer("localhost", 9312);
$res = $cl->query($query, "isp");

この時点で、何らかのエラーが発生したかのように実行が停止しますが、ログインしていないlogquery_log、sphinx.confファイルの場所です。

私のsphinx.confファイルの場合、省略部分は次のとおりです。

searchd {
    listen = 9312
    listen = 9306:mysql41
    log = {$MY_BASE}\ISP_Sphinx\log\searchd.log
    query_log = {$MY_BASE}\ISP_Sphinx\log\query.log
    read_timeout = 5
    client_timeout = 300
    max_children = 30
    pid_file = {$MY_BASE}\ISP_Sphinx\log\searchd.pid
    {$ETC, ETC, ETC}
}

DOSプロンプトから、検索ツールは期待どおりに機能します。

SphinxSearchサイトに記載されているように、Windowsサービスとして実行していることを検索しました。私はsphinx.confをもっと投稿することができます。この状況は、私がGoogleで見た他のどの状況とも一致していないようです。他の質問に見られるように、ポートの問題である場合もありますが、ここではそうではないと思います。

では、クエリコマンドが考えて失敗する原因は何でしょうか。少なくとも、他のどこにエラーがダンプされる可能性があるのでしょうか。また、Apache2ログを確認しましたが、この問題に関しては何も確認していません。

4

2 に答える 2

2

SphinxforWindowslocalhostでの使用は既知の問題です。に置き換えlocalhostてください127.0.0.1

SphinxSearch /トラブルシューティングで述べたように:

$wgSphinxSearch_hostがlocalhostとして維持されている場合、WindowsVistaおよびWindows7で問題が発生したため、localhostの代わりに127.0.0.1を使用することをお勧めします。

于 2012-08-10T17:29:18.027 に答える
0

試す

listen = 127.0.0.1:9312

スフィンクスのバージョン、古いバージョンのバグを更新します(src / sphinxstd.h、1389行目)

于 2012-08-10T17:29:59.453 に答える