太阳黑子2.1.0 RSolr ::错误:: Http(RSolr ::错误:: Http - 404未找到

时间:2014-04-18 03:47:59

标签: ruby-on-rails solr mongoid sunspot

运行Rails 4.0.1和Sunspot 2.1.0,我设法在开发中运行太阳黑子,但是当我尝试执行查询或索引时,我收到以下错误:

RSolr::Error::Http (RSolr::Error::Http - 404 Not Found
Error:     Not Found

Request Data: "fq=type%3AMatch&q=arsenal&defType=edismax&start=0&rows=10"

Backtrace: /Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/rsolr-1.0.10/lib/rsolr/client.rb:283:in `adapt_response'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/rsolr-1.0.10/lib/rsolr/client.rb:190:in `execute'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/rsolr-1.0.10/lib/rsolr/client.rb:176:in `send_and_receive'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/sunspot_rails-2.1.0/lib/sunspot/rails/solr_instrumentation.rb:16:in `block in send_and_receive_with_as_instrumentation'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/activesupport-4.0.1/lib/active_support/notifications.rb:159:in `block in instrument'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/activesupport-4.0.1/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/activesupport-4.0.1/lib/active_support/notifications.rb:159:in `instrument'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/sunspot_rails-2.1.0/lib/sunspot/rails/solr_instrumentation.rb:15:in `send_and_receive_with_as_instrumentation'
(eval):2:in `post'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/sunspot-2.1.0/lib/sunspot/search/abstract_search.rb:45:in `execute'
/Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/sunspot-2.1.0/lib/sunspot/session.rb:59:in `search'):
  app/models/match.rb:483:in `upcoming_games'
  app/controllers/tickets_controller.rb:34:in `search'


  Rendered /Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/actionpack-4.0.1/lib/action_dispatch/middleware/templates/rescues/_source.erb (0.6ms)
  Rendered /Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/actionpack-4.0.1/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.0ms)
  Rendered /Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/actionpack-4.0.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.8ms)
  Rendered /Users/bashar/.rvm/gems/ruby-2.1.1@global/gems/actionpack-4.0.1/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (13.1ms)

这是我的sunspot.yml

production:
  solr:
    hostname: ENV['WEBSOLR_URL']
    port: 80
    log_level: WARNING
    path: /solr/production
    # read_timeout: 2
    # open_timeout: 0.5
development:
  solr:
    hostname: localhost
    port: 8982
    log_level: INFO
    path: /solr/development
    # solr_home: solr
test:
  solr:
    hostname: localhost
    port: 8981
    log_level: WARNING
    path: /solr/test

注意我尝试了不同的solr_home配置,尝试删除solr文件夹并按照别处的建议重新启动太阳黑子,并确保pid Rails尝试连接是相同的。

我知道还有其他类似的帖子,但没有提供适合我的解决方案。有什么想法吗?

对于它的价值,我正在使用Mongoid。但这似乎并不相关。

1 个答案:

答案 0 :(得分:0)

尝试从sunspot.yml中的生产配置中删除“path”指令,很可能solr_home指向默认目录(/ solr),其中索引实际存在

你可以试试这个:

$ ps aux | grep solr

并在此处发布输出?