1

PHPからSolrにアクセスするためにSolariumを使用しています。ソラリウムを使用して通常の選択クエリを実行すると、すべてが正常に機能します。

問題: MoreLikeThisクエリを実行しようとすると、クエリを実行しようとすると次のエラーが発生します。何がうまくいかなかったのですか、そしてそれをどのように修正できますか?

Solr HTTP error: Not Found (404)

Location:
/home/mysite/public_html/application/libraries/Solarium/Result.php on line 98

PHPコード

$client = new Solarium_Client($config);

$query = $client->createMoreLikeThis()
                ->setQuery('id:' . $product_id)
                ->setMltFields('title, description')
                ->setMinimumDocumentFrequency(1)
                ->setMinimumTermFrequency(1)
                ->setInterestingTerms('details')
                ->setMatchInclude(false)
                ->setRows(10);
$resultset = $client->select($query);

Solarium_Client_Response_Objectatを調べた/solarium/Client.phpところ、受け取った応答は次のようになりました。

Solarium_Client_Response Object
(
    [_headers:protected] => Array
        (
            [0] => HTTP/1.1 404 Not Found
            [1] => Server: Apache-Coyote/1.1
            [2] => Content-Type: text/html;charset=utf-8
            [3] => Content-Length: 979
            [4] => Date: Mon, 27 Aug 2012 12:03:42 GMT
            [5] => Connection: close
        )

    [_body:protected] => 
    [_statusCode:protected] => 404
    [_statusMessage:protected] => Not Found
)
4

1 に答える 1

0

Solrでmorelikethisハンドラーを構成する必要があります。おそらくselectハンドラーがあるので、標準のselectが機能します。ただし、このクエリタイプに似ている場合は、別のハンドラーを構成する必要があります。

詳細については、http ://wiki.apache.org/solr/MoreLikeThisHandlerを参照してください。

于 2012-08-28T13:15:39.113 に答える