Rails 3.0.10 アプリケーションを Passenger、Capistrano、nginx、および MySQL を使用して Ubuntu 10.04 サーバーにデプロイする際に多くの問題が発生しました (さらに apache2 ではさらに問題が発生しました)。rake を 0.8.7 にダウングレードした後、ようやく動作するようになりましたが、私の開発環境では Sunspot/Solr が動作しなくなりました。sunspot_solr サーバーが実行されており、サーバーの URL を取得して、ブラウザー経由で接続できます。URL は sunspot.yml と同じです。問題の原因となった可能性のある何をしたのかわかりません。以前(レーキをダウングレードする前)、太陽黒点で同じ問題がありました。その後、突然再び機能し始めました。理由はわかりません... Sunspot の 2 つのバージョン (1.2.1 と 1.3.0) を試しました。どちらも以前は機能していましたが、現在は機能していません。
これは私が得ているエラーメッセージです:
SocketError (getaddrinfo: Name or service not known):
app/models/resource.rb:128:in `text_search'
app/controllers/search_controller.rb:21:in `index'
Rendered /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.10/lib/action_dispatch/middleware/templates/rescues/_trace.erb (2.0ms)
Rendered /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.10/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (161.6ms)
Rendered /usr/lib/ruby/gems/1.8/gems/actionpack-3.0.10/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (168.9ms)
コントローラーは少し面倒なので、関連する部分だけを含めます。
@criterion = params[:criterion]
@sort_direction = params[:sort_direction]
if @criterion && @sort_direction
session["sort_search"] = @criterion + "|" + @sort_direction
elsif session["sort_search"]
@criterion = session["sort_search"].split("|")[0]
@sort_direction = session["sort_search"].split("|")[1]
else
@criterion = "updated_at"
@sort_direction = "desc"
end
@search = Resource.text_search(session[:search_params] || "", current_user, @criterion, @sort_direction)
@resources = @search.results
コントローラーが機能していたので、コントローラーで何も変更していません。
私の宝石ファイル:
source 'http://rubygems.org'
gem 'rake'
gem 'rails', '3.0.10'
gem 'jquery-rails', '>= 1.0.12'
gem 'sqlite3'
gem 'ancestry'
gem 'carrierwave'
gem 'sunspot_rails', '>= 1.3' #'~> 1.2.1' #
gem 'authlogic'
gem 'will_paginate'
gem 'declarative_authorization'
group :production do
gem 'mysql'
end
group :development do
gem 'sunspot_solr'
end
gem 'capistrano'
私のrakefile:
require File.expand_path('../config/application', __FILE__)
require 'rake'
Skolearkivet::Application.load_tasks