你如何在本地运行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框架的地方。