Solr太阳黑子生产环境设置问题

时间:2014-02-19 16:14:38

标签: ruby-on-rails solr sunspot sunspot-rails sunspot-solr

我正在尝试在生产模式下设置solr太阳黑子搜索。

我遵循了以下教程,并成功设置了运行tomcat-solr服务器。 http://www.arborisoft.com/how-to-install-apache-solr-4-4-on-ubuntu-12-04/

我跑了

rails generate sunspot_rails:install

并配置了config / sunspot.yml文件。

对于开发模式,我使用'sunspot_solr'gem(不建议用于生产模式)并使此命令有效。

bundle exec rake sunspot:solr:start

当我删除这个宝石时

它给了我以下错误

  Note: This task has been moved to the sunspot_solr gem. To install, start and
  stop a local Solr instance, please add sunspot_solr to your Gemfile:

  group :development do
    gem 'sunspot_solr'
  end

我尝试将此添加到Rakefile:

require 'sunspot/solr/tasks'

当我运行以下命令时

bundle exec rake app:sunspot:solr:start

我收到以下错误

rake aborted!
cannot load such file -- sunspot/solr/tasks

我正在使用rails 4.

我不知道我错过了什么。我已经搜索了stackoverflow的解决方案。但我无法得到任何参考。即使我发现任何因为我是铁杆菜鸟,我也无法理解他们在谈论什么。任何解决方案都会非常有用。

1 个答案:

答案 0 :(得分:1)

您还可以将生产模式或任何其他已定义模式的路径更改为 solr / default in config / sunspot.yml 文件。
这些是一些可以解决问题的终端命令:

  1. ps aux | grep solr 获取solr进程ID
    通过这个,你可以检查哪个服务器ID正在运行,哪个服务器在你的太阳黑子 pid文件中。
  2. sudo kill <ID><ID> 是您从1找到的ID
  3. rm -r <path/to/solr> ,删除项目中的solr目录以删除所有以前的索引
  4. RAILS_ENV=production bundle exec rake sunspot:solr:start
  5. /solr/default
  6. 中更改 config/sunspot.yml 的路径
  7. RAILS_ENV=production bundle exec rake sunspot:solr:reindex
  8. 此链接还有助于理解问题和问题:https://github.com/sunspot/sunspot/issues/492