2011-12-22 29 views
0

我有一個帶有Ubuntu 10.04和Nginx的VPS以及一個通過capistrano部署到它的Rails應用程序。到目前爲止,一切正常。昨天我試圖整合Sunspot/Solr,這是一個完全的災難,因爲它破壞了我的整個服務器和應用程序。 因此,今天我試着將Tire/ElasticSearch作爲一個組合用於全文搜索。在我的本地開發環境中,所有東西都能正常工作。我通過自制軟件安裝了ES,並啓動並運行。經過一些測試後,我將應用程序部署到了我的VPS並在此服務器上安裝了ES。 當我開始ES時,它給了我一個PID,似乎工作正常,但問題是,它似乎像輪胎寶石不能連接到它或找到它。因爲我無法保存將被索引的對象或在數據庫中搜索某個對象。我總是得到消息,(我改變了IP地址自己0.0.0.0):爲什麼輪胎在生產模式(RoR)下不能連接到ElasticSearch?

Started GET "/food?utf8=%E2%9C%93&query=hamburger" for 0.0.0.0 at 2011-12-22 16:43:07 +0100 
Processing by PostsController#index as HTML 
Parameters: {"utf8"=>"✓", "query"=>"hamburger"} 
Completed 500 Internal Server Error in 11ms 

Errno::ECONNREFUSED (Connection refused - connect(2)): 
app/models/food.rb:23:in search' 
app/controllers/food_controller.rb:12:inindex' 

的消息幾乎是相同的,如果我嘗試保存的東西,只有在發生錯誤是不同的代碼行。

我一直在尋找幾個小時來找出錯誤在哪裏,如果我錯過了配置中的某些東西或問題是什麼,但我似乎無法找到它。 我一直在想這個問題是一個 )輪胎不知道如何找到ES,即使沒有配置來設置 B)正Tables或Nginx的導致錯誤

而且我也不能打開my-domain.com:9200來訪問ES,但可能這是由於Nginx。唯一的問題是,我無法在網絡上找到遇到同樣問題或共享方法的人。

我真的很感謝你的幫助。

回答

0

發現問題。在我的VPS上設置ES時,我設置了服務器的修復IP地址。根據指南,這應該是正確的,但在刪除該行並讓ES搜索它自己的設置後,它終於可以正常工作。

+0

如果您可以添加對此的引用,將會很好,因爲您的回答對任何人都不是很有用。 – Mohamad

+0

是的。我會給你一些代碼,但我不再使用ES。但是在配置文件中只有一行你設置IP地址,所以只是不設置它應該很容易。 – Thomas

相關問題