1

我正在为我们的应用程序使用 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

我还尝试在环境设置为生产环境的情况下运行该应用程序,但仍然没有运气。

有任何想法吗?

4

1 回答 1

3

因为 Solr 是开源软件,所以您可以运行自己的本地实例,就像 MySQL、PostgeSQL、Redis 等一样。

由于您使用的是 Sunspot,它已经提供了一个方便的 Rake 任务来启动 Solr 的本地实例。您可以在 Rails 应用程序中运行以下命令:

rake sunspot:solr:start

这样,您根本不需要弄乱您的配置。

也就是说,如果您确实想在开发环境中与 Websolr 上的索引进行交互(在某些情况下可能很方便),那么您需要更正以下代码中的一个小错误sunspot.yml

development:
  solr:
    ...
    port: 80

也就是说,我们正在使用端口 80。

于 2011-06-08T22:54:55.523 回答