2011-06-08 51 views
1

我使用Heroku作爲我們的應用程序,並且我開始使用Solr和WebSolr插件進行全文搜索(使用Sunspot gem)。我在我的開發機器上安裝了Solr並運行,但我想模擬生產環境以調試我所看到的一些問題。理論上,我應該能夠在我的config/sunspot.yml文件中指向websolr,並且我應該能夠搜索,更正?但是,當我嘗試搜索時,請求會超時。我已驗證sunspot.yml指向正確的位置:從您的開發環境使用WebSolr

development: 
    solr: 
     hostname: XXX.websolr.com 
     port: 8983 
     path: /solr/YYY 
     log_level: INFO 

我也試着運行設置爲生產環境中,仍然沒有運氣的應用程序。

任何想法?

回答

3

由於Solr是開源軟件,您可以像MySQL,PostgesQL,Redis等一樣運行您自己的本地實例。

由於您使用的是太陽黑子,它已經提供了一個方便的Rake任務來啓動本地Solr實例。您可以從Rails應用程序中運行以下代碼:

rake sunspot:solr:start 

這樣,您根本不需要惹惱您的配置。

這就是說,如果你特別想得到從您的開發環境與上Websolr指數進行互動(這在某些情況下派上用場),那麼你就需要糾正一個小小的錯誤在你sunspot.yml

development: 
    solr: 
    ... 
    port: 80 

也就是說,我們正在使用端口80.

+0

再次感謝尼克。是的,我認爲港口是問題。另外,我注意到只是設置WEBSOLR_URL環境變量也做到了。 – 2011-06-09 04:28:03

+0

是的,好點,太陽黑子確實尊重Heroku插件的WEBSOLR_URL環境變量。 – 2011-06-11 00:15:04