2012-05-21 3 views
1

Некоторые из тем, которые я следил, выглядят старыми, поэтому, возможно, то, что я пытаюсь сделать, было заменено чем-то другим - если это так, сообщите мне об этом!Отладка Rails с пассажиром и Apache

Я просто переустановил приложение Rails на новый сервер, но на этот раз я использую Apache и Passenger. Rails версии 1.8.7, Apache2 и Passenger на сервере Ubuntu 12.04. Я хотел бы еще отладчик, поэтому я попытался следующие этой теме:

http://chrisadams.me.uk/2009/04/28/how-to-set-up-a-debugger-with-mod_railspassenger http://duckpunching.com/passenger-mod_rails-for-development-now-with-debugger (оригинал статьи)

Я почти уверен, что вслед за этим точно, и мои файлы правильны. Но я получаю две несоответствия. Во-первых, когда я обновить свой сайт, мой сайт не висит (как указано на странице duckpunching) ... второй, когда я ставлю в:

rdebug -c 

Я получаю следующее сообщение об ошибке:

/usr/lib/ruby/gems/1.8/gems/ruby-debug-0.10.4/cli/ruby-debug.rb:109:in `initialize': Connection refused - connect(2) (Errno::ECONNREFUSED) 
    from /usr/lib/ruby/gems/1.8/gems/ruby-debug-0.10.4/cli/ruby-debug.rb:109:in `new' 
    from /usr/lib/ruby/gems/1.8/gems/ruby-debug-0.10.4/cli/ruby-debug.rb:109:in `start_client' 
    from /usr/lib/ruby/gems/1.8/gems/ruby-debug-0.10.4/bin/rdebug:336 
    from /usr/bin/rdebug:23:in `load' 
    from /usr/bin/rdebug:23 

Итак, я чувствую, что мой терминал не подключается автоматически? Как я уже сказал, я не могу найти обновленную информацию в Интернете по этой проблеме, поэтому любая помощь приветствуется либо при выполнении этой работы (отладка консольного типа для Apache/Passenger, как и у меня с WEBrick), или в современных лучших практиках. Благодаря!

+0

Вы уверены, что файл debug.txt создается и удаляется так, как должно быть? Также вы модифицировали development.rb или production.rb? – moritz

+0

Я использую настройку разработки RailsEnv, поэтому я изменил development.rb, чтобы включить, внизу (я включил путь, поскольку переменная RAILS_ROOT давала мне ошибку - я думаю, что она не определена в моей системе): if File.exins? (File.join ('~/www/glp', 'tmp', 'debug.txt')) требуют 'ruby-debug' Debugger.wait_connection = true Debugger.start_remote File.delete (File.join ('~/www/glp', 'tmp', 'debug.txt')) end В файле/tmp также есть файл debug.txt, но он пуст (и не удаляется как он должно быть?). – user

+0

'File.join ('~/www/glp', 'tmp', 'debug.txt')' Может показаться сложным, поскольку '~' относится к дому пользователя, в котором выполняется приложение. Обычно это владелец файла config.ru. Кроме того, используйте 'Rails.root' вместо' RAILS_ROOT' при работе с рельсами 3 (вы?). – moritz

ответ

0

Проверить

File.join('~/www/glp','tmp','debug.txt') 

относится ли к правильному пути, как это оценивается как владелец config.ru.

Смежные вопросы