使用`rails server`和`rackup`有什么区别?

时间:2012-02-21 18:51:17

标签: ruby-on-rails ruby rack thin webrick

我注意到的唯一区别是rails server在端口3000上启动服务器,而rackup在端口9292上启动服务器。

还有其他差异吗?

是否有一个用例而不是另一个?

1 个答案:

答案 0 :(得分:17)

rails server是启动服务器的命令(通常是WEBrick),位于rails

rackuprack中间附带的命令,它使用config.ru中的设置并根据这些设置启动服务器。这是一个标准(它适用于其他框架和基于机架的应用程序),通常用于生产服务器。

值得注意的一点是,如果您使用rails s启动服务器,那么您将在终端中看到输出。

根据我的经验,在制作中,phusion passenger使用了rackup,因此在这种情况下您不希望rails s

另外,可以使用-p标志使用rails serverrackup更改端口。