用SSL运行Rails服务器吗? (彪马)

时间:2019-03-14 20:21:42

标签: ruby-on-rails ssl puma

我目前正在使用Rails 5.2.1。当我启动Rails服务器时,我会做:

rails s -p 3000 -b x.x.x.x(ip) -e production -d

这将启动使用puma的Rails服务器。我可以在我的Rails应用程序中使用SSL吗?

3 个答案:

答案 0 :(得分:0)

只要您在配置目录中的某个地方有本地密钥,您就应该能够做到:

rails s puma -p 3000 -b 'ssl://0.0.0.0:3000?key=config/your_key_file.key&cert=config/your_certificate_file.crt'

如果您需要了解如何生成本地证书和密钥,这是一个不错的帖子:https://rossta.net/blog/local-ssl-for-rails-5.html#create-a-self-signed-certificate

答案 1 :(得分:0)

我使用的是称为隧道的宝石,请在此处查看:https://github.com/jugyo/tunnels

它是本地计算机上https的http代理。也不需要钥匙。

希望有帮助!

答案 2 :(得分:0)

不要将Puma直接暴露在互联网上-puma的设计假设是它将位于反向代理(例如nginx)之后。

nginx层将为您的应用程序提供另一层或保护,并具有显着提高应用程序可能服务(资产)的任何静态文件的额外好处。

可以使用puma的-b选项(尝试puma -help)使用SSL / TLS,但是除非您有其他选择,否则我将避免这种情况。

请澄清一下,我是iodine HTTP / WebSocket Ruby服务器的作者,该服务器还支持SSL / TLS ...将此建议视为明智的建议:我建议使用反向代理。