ruby-on-rails - 如何在 SSL 模式下使用 Puma 服务器运行 Rails/Capybara?
问题描述
我正在尝试让 capybara 通过 ssl 运行测试 puma 服务器。需要帮助配置它,请:
Capybara.register_server :ssl_puma do |app, port, host|
require 'rack/handler/puma'
Rack::Handler::Puma.run(app, Host: host, Port: port, Threads: "0:1") do |server|
ctx = Puma::MiniSSL::Context.new
ctx.key = ENV['SSL_KEY_PATH']
ctx.cert = ENV['SSL_CERT_PATH']
ctx.verify_mode = Puma::MiniSSL::VERIFY_NONE
server.add_ssl_listener host, port, ctx # this line is wrong, but that's the gyst of what needs to happen
end
end
有任何想法吗?
解决方案
如果您使用的是最新版本的 Capybara,我相信您应该能够执行类似的操作
Capybara.server = :puma, { Host: "ssl://#{Capybara.server_host}?key=#{ENV['SSL_KEY_PATH']}&cert=#{ENV['SSL_CERT_PATH']" }
推荐阅读
- azure - Azure Key Vault:机密版本生命周期
- elasticsearch - 如果结果集中有一个匹配项,则丢弃同一用户的所有结果
- c - 如何在本地运行 SRT 服务器?
- javascript - 如何使用 javascript 或 jquery 在文件上传时指定应上传哪些文件
- php - 是否有预定义的函数可用于删除 PHP 中数组的每个元素?
- cassandra-2.0 - 如何将数据从 cassandra 表复制到带有 where claues 的 CSV?
- c# - 检测绑定在按钮上的布尔数组的变化
- php - 如何在循环内再次插入循环然后插入查询
- javascript - 显示数据后添加按钮不显示
- ios - 如何从通知中心删除 MPRemoteCommandCenter