Ответ 1
Нажмите Ctrl+C
При запуске сервера он упоминает это в тексте запуска.
Я следую инструкциям здесь http://railsinstaller.org/mac, чтобы встать и работать с Rails на Mac под управлением OS X 10.8.2
На шаге 8 меня попросят перезапустить Rails-сервер, но как?
Я предполагаю через командную строку, но из уже открытого окна терминала ruby или нового?
Нажмите Ctrl+C
При запуске сервера он упоминает это в тексте запуска.
В OSX вы можете воспользоваться UNIX-подобной командной строкой - вот что я держу под рукой в моем .bashrc, чтобы мне было проще перезапустить сервер, работающий в фоновом режиме (-d) (обратите внимание, что вам нужно в корневом каталоге Rails при запуске этого):
alias restart_rails='kill -9 'cat tmp/pids/server.pid'; rails server -d'
Мой первоначальный ответ на комментарий @zane о том, как PID файл не удаляется, заключался в том, что его поведение может зависеть от версии Rails или типа ОС. Однако также возможно, что оболочка rails server -d
вторую команду (rails server -d
) раньше, чем kill
может вызвать остановку предыдущего запущенного экземпляра.
Так что альтернативно, kill -9 cat tmp/pids/server.pid && rails server -d
может быть более надежным; или вы можете специально запустить команду kill
, подождать, пока папка tmp/pids
опустеет, и перезапустить новый сервер.
Теперь в рельсах 5 ю можно делать:
rails restart
Эта печать rails --tasks
Перезагрузите приложение, нажав tmp/restart.txt
Я думаю, что это полезно, если вы запускаете рельсы как демон
В случае, если это не работает, есть еще один способ, который особенно хорошо работает в Windows: Убить процесс localhost: 3000 из командной строки Windows
Мне пришлось перезапустить приложение rails на производстве, поэтому я искал другой ответ. Я нашел это ниже:
http://wiki.ocssolutions.com/Restarting_a_Rails_Application_Using_Passenger
если вы не можете найти процесс rails, чтобы убить его, он может фактически не работать. Удалите папку tmp и ее подпапки, с которых вы запускаете сервер rails, и попробуйте снова.