0

在 config/sunspot.yml

production:
  solr:
    hostname: http://index.websolr.com/solr/...
    port: 8983
    log_level: WARNING
    path: /solr/production
...

我的 Heroku 配置变量是

http://index.websolr.com/solr/...

其他所有内容似乎都按照文档进行了配置,但是我在日志中不断收到 404 条消息并且应用程序崩溃。有没有人遇到过这个并设法解决它?

4

2 回答 2

1

澄清一下,Sunspot 默认与 Solr 捆绑在一起,但这与您的 websolr 索引完全分开。Websolr 索引通过仪表板进行管理,您可以通过运行heroku addons:open websolr. 所有的配置设置都在那里应用;您无法从命令行启动/停止/重新启动 websolr。

根据文档

默认情况下,Sunspot 1.3.0 支持WEBSOLR_URLHeroku 应用程序在生产环境中使用的环境变量。这使 Sunspot 无需进一步配置即可对您的索引执行操作,从而允许用户快速启动和运行搜索,而无需更改其应用程序的代码库。

如果您想更细粒度地控制您在不同环境中使用的 Solr 服务器,您可以script/generate sunspot从应用程序根目录中的命令行运行,以在config/sunspot.yml.

因此,您应该能够简单地删除 sunspot.yml 文件,Sunspot 将简单地使用您的WEBSOLR_URL. 或者,您可以使用以下内容:

production:
   solr:
     hostname: index.websolr.com
     port: 80
     log_level: WARNING
     path: /solr/a1b2c3d4e5 (whatever your key is)
于 2014-10-24T18:30:31.103 回答
0

尝试这个:

  1. 停止 Solr
  2. 从项目文件夹中删除 solr 文件夹
  3. 将“路径:/solr/production”更改为:“路径:/solr/default”
  4. 重启机器
  5. 开始 solr

它很奇怪,但对我有用。

于 2014-10-24T13:26:12.083 回答