ruby-on-rails 如何停止(和重新启动)Rails服务器?

ff29svar  于 2023-01-03  发布在  Ruby
关注(0)|答案(7)|浏览(225)

我将按照这里的说明http://railsinstaller.org/mac在运行OS X 10.8.2的Mac上启动并运行Rails
在第8步,我被要求重新启动Rails服务器,但是怎么做呢?
我假设是通过命令行,但是从已经打开的ruby终端窗口还是一个新窗口?

khbbv19g

khbbv19g1#

现在在rails 5中,您可以执行以下操作:

rails restart

rails --tasks的输出:
触摸tmp/restart.txt重启应用程序
我认为如果你像恶魔一样运行Rails,这是有用的

pengsaosao

pengsaosao2#

Ctrl+C
当您启动服务器时,它会在启动文本中提到这一点。

fgw7neuy

fgw7neuy3#

在OSX上,你可以利用类似UNIX的命令行--下面是我在.bashrc中保存的命令行,它使我能够更容易地重新启动一个在后台(-d)模式下运行的服务器(注意,当运行这个命令行时,你必须在Rails根目录下):

alias restart_rails='kill -9 `cat tmp/pids/server.pid`; rails server -d'

对于@赞内关于PID文件没有被删除的评论,我最初的React是,这可能是行为依赖于Rails版本或操作系统类型,但是,也有可能shell运行第二个命令(rails server -d)的时间比kill实际导致前一个运行的示例停止的时间更早。
因此,kill -9 cat tmp/pids/server.pid && rails server -d可能更健壮;或者您可以专门运行kill,等待tmp/pids文件夹清空,然后重新启动新服务器。

s6fujrry

s6fujrry4#

如果这不起作用,还有另一种方法在Windows中特别有效:Kill localhost:3000 process from Windows command line

pinkon5k

pinkon5k5#

我不得不重新启动生产上的rails应用程序,所以我寻找另一个答案。我在下面找到了它:
http://wiki.ocssolutions.com/Restarting_a_Rails_Application_Using_Passenger

dtcbnfnu

dtcbnfnu6#

如果你不能找到rails进程来终止它,它可能实际上没有运行。从你运行rails服务器的地方删除tmp文件夹和它的子文件夹,然后再试一次。

z9zf31ra

z9zf31ra7#

我只是用
第一个月
这对我很有效

相关问题