在 Rails 从 Puma 将本地 Web 服务器更改回 WEBrick

Change local web server back to WEBrick in Rails from Puma

我按照 Heroku 文档设置 Puma 并输入了这个命令:

bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-development}

这使得现在每当我 运行 rails s 时,我都会在我的开发环境中 运行 puma。但是,无论出于何种原因,Puma 正在造成破坏。如何切换回使用 WEBrick?

尝试过

bundle exec webrick -p ${PORT:-3000} -e ${RACK_ENV:-development}

当然,找不到命令:webrick。就知道太容易了...

谢谢!

到 运行 使用 webrick 开发的本地服务器,你只需要在 运行ning rails server:

时指定它
rails server webrick

如果将 puma 移至 Gemfile 的生产组,您可能会再次将其默认设置回 webrick:

group :production do
  gem 'puma'
end

然后在没有生产组的情况下捆绑:

bundle install --without production

根据以下内容:

How to set Rails dev server to webbrick instead of Puma

您想将 Gemfile 更改为:

group :production do
  gem 'puma'
end

并且 运行 bundle install --without production 会将 WEBrick 设置为 non-production(开发和测试)服务器,并将 Puma 设置为生产服务器。

从 gem 文件中删除 puma gem 并将其捆绑。

并启动应用程序。您可以在控制台中看到 webrick 应用程序服务器启动信息。

默认的应用程序 Web 服务器是 Webrick

运行 与:

bundle exec rails server -u webrick -p 3000 -e staging

您可能还需要安装 webrick。但我记得它是标准库的一部分

bundle add webrick