gpt4 book ai didi

ruby-on-rails - 在 EC2 AWS 实例上仅运行 Puma 时使用 Rails SSL

转载 作者:太空宇宙 更新时间:2023-11-03 13:31:06 25 4
gpt4 key购买 nike

规范:Rails 4.2.4、Ruby 2.1.9、运行 puma、生产模式下的 EC2 实例

我有一个 SSL 证书,我想在我的服务器上安装,但是使用像这样的技术不会产生任何结果

rails s puma -b 'ssl://0.0.0.0:9292?key=path_to_key.key&cert=path_to_cert.crt&verify_mode=none&ca=path_to_root_bundle.crt'

How to configure Rails with Puma to use SSL?

还有

RAILS_ENV=production rvmsudo -E rails s puma -b "ssl://0.0.0.0:9292?key=${KEY_PATH}&cert=${CERT_PATH}&verify_mode=peer&ca=${CERT_BUNDLE_PATH}" -p 80 

我得到的不是正常运行的服务器

Puma starting in single mode... * Version 3.2.0 (ruby 2.1.9-p490), codename: Spring Is A Heliocentric Viewpoint * Min threads: 0, max threads: 16 * Environment: production * Listening on tcp://ssl://0.0.0.0:9292?key=~/evslideshow.key&cert=~/e3b162f57ea48f91.crt&verify_mode=peer&ca=~/gd_bundle-g2-g1.crt:80 Exiting > /home/ec2-user/.rvm/gems/ruby-2.1.9@slideshow/gems/puma-3.2.0/lib/puma/binder.rb:240:in `initialize': getaddrinfo: Name or service not known (SocketError)

现在我的脑子里正在考虑不同的选择。我只是错过了在这里使用 puma 的一些基本方面吗? puma 文档非常害怕,这就是我在这里问的原因。或者我可以使用 Nginx,因为互联网上似乎有很多关于使用 SSL 证书进行设置的文档。

如果有针对 puma 的更简单的修复程序,那么我将只使用它。

最佳答案

通过阅读一些 issue pages 找到了解决方案在 puma 的 Github 页面上。显然我们必须直接调用 puma,而不是通过 rails server,尽管在​​ old stackoverflow answer 中是这样说的

工作代码是

RAILS_ENV=production rvmsudo -E puma -d -b "ssl://0.0.0.0:443?key=${KEY_PATH}&       
cert=${CERT_PATH}&verify_mode=peer&ca=${CERT_BUNDLE_PATH}" -p 80

确保在您的生产配置文件中也打开 config.force_ssl。

关于ruby-on-rails - 在 EC2 AWS 实例上仅运行 Puma 时使用 Rails SSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54701383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com