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

时间:2014-10-24 13:03:35

标签: ruby-on-rails heroku sunspot websolr

在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条消息。有没有人遇到过这个并设法修复它?

2 个答案:

答案 0 :(得分:1)

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

根据documentation

  

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

     

如果您希望对在不同环境中使用的Solr服务器进行更细粒度的控制,可以从应用程序根目录中的命令行运行script/generate sunspot,以在{{1}创建一个Sunspot配置文件}}

所以你应该能够简单地删除sunspot.yml文件,而Sunspot将只使用你的config/sunspot.yml的值。或者,您可以使用以下内容:

WEBSOLR_URL

答案 1 :(得分:0)

试试这个:

  1. 停止Solr
  2. 从项目文件夹中删除solr文件夹
  3. 改变路径:/ solr / production' to:'路径:/ solr / default'
  4. 重新启动机器
  5. 启动solr
  6. 很奇怪,但对我有用。