你如何在本地运行Rails进行测试?

我们的开发人员使用HTTP,prod使用HTTPS,这导致我们无法在本地重现与HTTPS相关的问题。

如何在本地运行带有SSL的rails用于测试目的? 有Webrick配置吗?

谢谢

你应该使用thin来做到这一点:

$ sudo apt-get install thin 

并在config / application.rb中添加此行

 config.force_ssl = true 

然后使用命令行在thin上运行app:

 $ thin start --ssl 

我认为这里的问题特定于Rails’测试’环境,这可能意味着rspec,如果是这样,jaikoo的这个要点对我有用:

https://gist.github.com/jaikoo/daf88024b8de1cf9339b

关于’开发’环境,最终我使用了瘦,我并不是真的想要,但我看到的最好的写作是Keyur Gohil的这篇文章:

https://blog.botreetechnologies.com/enable-ssl-in-developement-using-thin-2a4bd1af500d

虽然我把它放在批处理文件中并添加-D -V并确保它在不同的端口上运行:

 #! # Sets up the use of SSL in development # # https://www.devmynd.com/blog/rails-local-development-https-using-self-signed-ssl-certificate/ # bundle exec thin -D -V start -a localhost -p 3001 --ssl --ssl-key-file ~/development/apps/localhost_ssl_tsl_keys/localhost.key --ssl-cert-file ~/development/apps/localhost_ssl_tsl_keys/localhost.crt 

最终,您应该在没有SSL的情况下运行开发期。 除非您的SSL证书出现问题,否则您不应该有与不同环境无关的错误。

暂存是测试SSL框架的地方。