2011-08-17 74 views
4

可能重复:
Problem running Thinking Sphinx with Rails 2.3.5Ruby on Rails的 - 狮身人面像的思考问题

我运行轨道2.3.5 我每次运行rake TS:启动或ts.rebuild的耙文件相当如下:

Sphinx cannot be found on your system. You may need to configure the following 
settings in your config/sphinx.yml file: 
    * bin_path 
    * searchd_binary_name 
    * indexer_binary_name 

rake aborted! 
key not found 

我有狮身人面像运行和sphinx.yml我ñ配置是正确的:(我相信)

bin_path: /usr/bin/searchd 
    searchd_binary_name: searchd 
    indexer_binary_name: sphinx-indexer 

狮身人面像似乎运行,在运行时为(通过运行命令:服务的searchd启动)

我得到的错误,当我浏览到一个页面使用搜索是:

ThinkingSphinx::SphinxError in Jobs#index 
Showing app/views/jobs/index.html.erb where line #30 raised: 
unknown local index 'job_core' in search request 

而不是连接错误? 大概大量的问题在这里,但我的“M卡住。 另外,如果是的话我可以重写,我修改为使用不同的搜索功能的代码,什么是最好的?

回答

1

bin_path不应该包括实际的二进制名称(当您与searchd_binary_nameindexer_binary_name设置它们) - 所以只有/usr/bin尝试

+0

试过,没有运气。不知道设置有什么问题,但我很不情愿地在我的mysql语句中使用%like%条件的条件。 – Tom

+1

Tom,如果你想再试一次 - 在开始守护进程之前,你已经为你的数据建立了索引,是吗? 'rake ts:index' – pat

1

您sphinx.yml配置相较于矿山,它看起来像我的bin_path,search_binary_name和index_binary_name值表示为字符串,但。这似乎并不重要。然而,我的索引器二进制文件是索引器而不是狮身人面像索引器

development: 
    min_infix_len: 3 
    config_file: "./config/development.sphinx.conf" 
    searchd_log_file: "./log/searchd.log" 
    query_log_file: "./log/searchd.query.log" 
    pid_file: "./log/searchd.development.pid" 
    bin_path: "/usr/local/bin" 
    searchd_binary_name: "searchd" 
    indexer_binary_name: "indexer" 

所以这也许值得只是检查您所指定的正确的二进制名称。这是除了Pat说的不包括bin_path中的搜索二进制名称之外的内容。