2011-02-02 11 views
10

Używam Rails 3 z Apache i Passenger. Odkąd przełączyłem się z Mongrel na Passenger, stwierdziłem, że muszę restartować Apache za każdym razem, gdy zmieniam kod. Czy to jest zamierzone zachowanie? Czy jedynym sposobem na uniknięcie tego problemu jest wykorzystanie Kundla w rozwoju?Muszę ponownie uruchomić Apache za każdym razem, gdy zmieniam kod Railsowy

+0

Czy ta pomoc: http://stackoverflow.com/questions/1106996/why-do-i-have-to-restart-apache-to-properly-refresh-a-ruby-on-rails-view-in -the-b i ostatnia część http://blog.bsodmike.com/2010/06/05/howto-ruby-on-rails-with-apache-passenger-mod_rails-ubuntu-lucid-lynx-10-04/ – Zabba

+0

Czy mówisz o produkcji lub rozwoju? –

+0

Nie wiem - mam również problemy z kontrolowaniem, czy jestem w produkcji lub rozwoju. –

Odpowiedz

21

Zakładając trzeba zrestartować Apache nawet dla kodu modelu/view/kontrolera, wydaje się jakby skonfigurowaniu Pasażera, aby uruchomić aplikację w środowisku produkcyjnym. Możesz to naprawić, dołączając RailsEnv development do wirtualnego hosta.

Niektóre kody będą wymagały ponownego uruchomienia aplikacji - przykładami są cokolwiek w config/initializers i vendor.

Istnieje sposób na ponowne uruchomienie tylko aplikacji (a nie całego serwera), która jest po prostu touch tmp/restart.txt. Spowoduje to aktualizację znacznika czasu tmp/restart.txt, który uruchomi Pasażera w celu ponownego uruchomienia aplikacji.

Dodatkowo można wykonać touch tmp/always_restart.txt. Dzięki temu Pasażer będzie mógł ponownie uruchomić aplikację na stronie co ładowanie strony. Może to być przydatne, jeśli pracujesz nad sekcjami wymagającymi ponownego uruchomienia (takimi jak powyższe przykłady). Aby zatrzymać automatyczne ponowne uruchomienie, musisz usunąć plik, na przykład: rm tmp/always_restart.txt.

+0

Tak, "' touch tmp/restart.txt' "robi mi sztuczkę! –

+0

Brakowało mi 'tmp/always_restart.txt', znacznie lepiej niż ręcznie naciskając' restart.txt' za każdym razem. – joemaller

0

Możesz także samodzielnie korzystać z pasażera podczas pracy w trybie samodzielnym. Z katalogu projektu, typ

 
passenger start 
Powiązane problemy