2

私はこのサイトを過去 3 年ほど使用してきました...これが私の最初の投稿です :D

しかし、役に立たない冗談はもう十分です。


アプローチ/問題、エラー、そしてエラーのトレース/ログから始めます。

次に、この問題を解決するためにこれまでに行ったこと、気付いたいくつかの奇妙なこと、およびその原因と考えられることについて説明します。


アプローチ/問題:

私は最近、モバイル アプリのバックエンド開発チームに加わりました。新機能を実装する前に、ローカル マシンで製品を起動して実行する必要があります...

(アプリディレクトリ内)rails s

=> WEBrick の起動

=> http://0.0.0.0:3000で開発を開始する Rails 3.1.0.rc4 アプリケーション

=> -d で呼び出してデタッチ => Ctrl-C でサーバーをシャットダウン

[2011-09-14 19:11:59] INFO WEBrick 1.3.1

[2011-09-14 19:11:59] INFO ルビー 1.8.7 (2009-06-12) [ユニバーサル darwin10.0]

[2011-09-14 19:11:59] INFO WEBrick::HTTPServer#start: pid=35031 ポート=3000

今のところ問題ないように見えますが、ブラウザでページにアクセスしようとすると...


エラー:

(ブラウザー ページのタイトル): アクション コントローラー:例外がキャッチされました

PGエラー

fe_sendauth: パスワードが指定されていません


トレース/ログ

(最初のセクションの端末の最後の行からの続き)

キャッシュ エラー: サーバーが利用できません

/Library/Ruby/Gems/1.8/gems/dalli-1.0.5/lib/dalli/ring.rb:45:in `server_for_key'

/Library/Ruby/Gems/1.8/gems/dalli-1.0.5/lib/dalli/client.rb:239:in `perform'

/Library/Ruby/Gems/1.8/gems/dalli-1.0.5/lib/dalli/client.rb:60:in `get'

/Library/Ruby/Gems/1.8/gems/rack-cache-1.0.3/lib/rack/cache/metastore.rb:320:in `read'

/Library/Ruby/Gems/1.8/gems/rack-cache-1.0.3/lib/rack/cache/metastore.rb:30:in `lookup'

/Library/Ruby/Gems/1.8/gems/rack-cache-1.0.3/lib/rack/cache/context.rb:165:in `lookup'

/Library/Ruby/Gems/1.8/gems/rack-cache-1.0.3/lib/rack/cache/context.rb:65:in `call!'

/Library/Ruby/Gems/1.8/gems/rack-cache-1.0.3/lib/rack/cache/context.rb:50:in `call'

/Library/Ruby/Gems/1.8/gems/rack-1.3.2/lib/rack/deflater.rb:13:in `call'

/Library/Ruby/Gems/1.8/gems/railties-3.1.0.rc4/lib/rails/rack/content_length.rb:16:in `call'

/Library/Ruby/Gems/1.8/gems/railties-3.1.0.rc4/lib/rails/rack/log_tailer.rb:14:in `call'

/Library/Ruby/Gems/1.8/gems/rack-1.3.2/lib/rack/handler/webrick.rb:59:「サービス」内

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:162:in `start'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:95:in `start'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:92:in `each'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:92:in `start'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:23:in `start'

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'

/Library/Ruby/Gems/1.8/gems/rack-1.3.2/lib/rack/handler/webrick.rb:13:in `実行'

/Library/Ruby/Gems/1.8/gems/rack-1.3.2/lib/rack/server.rb:265:in `start'

/Library/Ruby/Gems/1.8/gems/railties-3.1.0.rc4/lib/rails/commands/server.rb:70:in `start'

/ライブラリ/Ruby/Gems/1.8/gems/railties-3.1.0.rc4/lib/rails/commands.rb:54

/Library/Ruby/Gems/1.8/gems/railties-3.1.0.rc4/lib/rails/commands.rb:49:in `tap'

/ライブラリ/Ruby/Gems/1.8/gems/railties-3.1.0.rc4/lib/rails/commands.rb:49

script/rails:6:in `require'

スクリプト/レール:6

キャッシュ: [GET /] パス

ダリ::Server#connect localhost:11211

localhost:11211 に失敗しました (カウント: 0)

ブラウザから完全なトレースを出力することもできますが、この投稿が冗長になりすぎないようにします。

これがジレンマです!


私がやったこと:

簡単な解決策(以下にリストされています)は何の違いもありません。

正しくインストールされた pg gem (パスを手動で含めた後)

trust(ed) 接続を許可するように pg_hba.conf ファイルを修正しました。

pgadmin3 ツールとターミナルを介して postgres db に接続できます。


は?:

サーバーを別のポートで実行しても違いはありませんが、postgresql db 用に予約されているポートの 1 つに接続しようとすると、接続がビジーになります (必要に応じて、そのエラー ログも投稿できます)。

ユーザー/爆発やサインイン/サインアウトなど、アプリから存在しないページにアクセスしようとすると、エラーは同じです。ただし、端末ログには毎回「 [GET /'var'] pass 」が表示されます。


考え:

私の推測では、" [GET /'var'] pass " の最後にパスワードがあるため、問題はまだパスワードを期待している接続にあると考えられます。

また

pg db が別のサーバーで実行されており、アプリが自分のローカル マシンで実行しようとしているのを好まないこと。

あなたの推測が私のものよりも優れていることを願っています。


この投稿をなんとか達成できた場合は、称賛します。大変感謝しています。どうにかして解決策を思いつくことができたら、私は永遠に恵みを与えます.

よろしく、

〜ライアン・ジョンソン(RyeGuyHead)

4

1 に答える 1

4

pg_hba.conf を次のように変更します。

local   all         all                               trust
host    all         all         127.0.0.1/32          trust
host    all         all         ::1/128               trust

またはに置き換えtrustmd5パスワードを指定しますdatabase.yml

于 2011-09-15T02:54:15.767 に答える