我正在使用Heroku作为我们的应用程序,我开始使用Solr和WebSolr附加组件进行全文搜索(使用Sunspot gem)。我在我的开发机器上运行了Solr,但我想模拟生产环境以调试我看到的一些问题。从理论上讲,我应该能够在我的config / sunspot.yml文件中指向websolr,我应该能够搜索,更正吗?但是,当我尝试搜索时,请求会保持超时。我已经确认sunspot.yml指向正确的位置:
development:
solr:
hostname: XXX.websolr.com
port: 8983
path: /solr/YYY
log_level: INFO
我也尝试在环境设置为生产的情况下运行应用程序,但仍然没有运气。
有什么想法吗?
答案 0 :(得分:3)
因为Solr是开源软件,所以你可以运行自己的本地实例,就像MySQL,PostgesQL,Redis等一样。
由于你正在使用Sunspot,它已经提供了一个方便的Rake任务来启动Solr的本地实例。您可以在Rails应用程序中运行以下命令:
rake sunspot:solr:start
这样,你根本不需要弄乱你的配置。
也就是说,如果您特别希望在开发环境中与Websolr上的索引进行交互(在某些情况下这可能很方便),那么您需要更正sunspot.yml
中的一个小错误:
development:
solr:
...
port: 80
即,我们正在使用端口80。