3

Rails アプリに Rack-Bug をインストールしましたが、パネルが表示されません。

プロジェクト: http://github.com/brynary/rack-bug 追加手順: https://github.com/brynary/rack-bug/wiki/security その他の手順:ラック バグ インストールの問題。サーバーが起動しません (これについては、ドキュメントは本当にひどいです)

上から:

config/environments/development.rb に config.middleware.use 'Rack::Bug' を追加しました。以下を含む config/initializers/rack_bug.rb ファイルを追加しました。

require 'rack/bug'
require 'ipaddr'

ActionController::Dispatcher.middleware.use Rack::Bug,
  :ip_masks   => [IPAddr.new('192.168.2.2')],
  :secret_key => 'epT5uCIchlsHCeR9dloOeAPG66PtHd9K8l0q9avitiaA/KUrY7DE52hD4yWY+8z1',
  :password   => 'password'

(デスクトップの IP アドレスを指定しました。アプリは .2.3 の Linux 開発サーバーで実行されています)

/ rack_bug /bookmarklet.html に移動し、「Toggle Rack::Bug」ブックマークレットを Firefox ブックマーク ツールバーにドラッグしました。Rails アプリにページをロードし、"Toggle Rack::Bug" ブックマークレットをクリックし、ポップアップ ボックスにパスワードを入力して [OK] をクリックすると、ページがリロードされましたが、Rack-Bug パネルはありませんでした。

機能しない理由がわかりません。IRC チャンネルや Google グループもありません。

更新: そして楽しみは続きます。Windows デスクトップでの Firefox からのパネルのロードがまだ進行していません。ただし、Linux 開発サーバーで Firefox を起動し、ブックマークレットを取得してから、アプリのホームページに移動してクリックしました。パスワードを入力し、リロードすると 500 エラーが発生しました。ログ出力の最初の 4 行を次に示します。

Status: 500 Internal Server Error
undefined method `length' for #<Pathname:/home/ofer/src/ssp3>
  /usr/lib/ruby/gems/1.8/gems/ruby-openid-2.1.7/lib/openid/extras.rb:3:in `starts_with?'
  /home/ofer/src/ssp3/vendor/plugins/rack-bug/lib/rack/bug/panels/sql_panel/query.rb:65:in `filtered_backtrace'

そのため、最初の問題はまだ修正していませんが、最初の問題を修正してもまだ残っている 2 番目の問題を発見しました。2 番目のエラーは、開発サーバー上の Firefox が、エラーが発生したときにパネル実際に読み込んでいたことを暗示しているようです。これは明らかに ruby​​-openid 内部にあるようです。

以前よりもさらに後退したように感じます。

4

3 に答える 3

1

私の推測: http://github.com/SamSaffron/rack-bug/commit/16daa41b0ac9513e2d0a2b09ad9941fcb9c5d189

同じ問題があったので、そのパッチを書きました。プルリクエストを行います

于 2010-02-09T21:55:52.560 に答える
0

私は同じ問題を抱えていましたが、少しいじった後、ブラウザのキャッシュを使用せずにページをリロードする必要があることがわかりました(つまり、Ctrl-F5を押します)

于 2010-02-09T15:08:47.877 に答える
0

Linux開発サーバーはデスクトップと同じサブネット上にありますか?そうでない場合は、サーバーに表示されるデスクトップのIPアドレスを指定する必要があります。たとえば、デスクトップのIPアドレスは192.XXXですが、本番サーバーからは、ISPのゲートウェイを介してルーティングされているため、84.XXXと表示されます。

于 2010-02-09T15:10:37.217 に答える