Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 开发';它与HTTP和HTTPS都兼容_Ruby On Rails_Ssl_Https - Fatal编程技术网

Ruby on rails 开发';它与HTTP和HTTPS都兼容

Ruby on rails 开发';它与HTTP和HTTPS都兼容,ruby-on-rails,ssl,https,Ruby On Rails,Ssl,Https,我的应用程序还没有完全准备好使用SSL,所以在此期间,我允许使用SSL,但不需要它。我确实要求某些控制器使用SSL,并强制重定向到HTTPS以在此类控制器中执行操作 我可以通过精简启动--SSL使用SSL启动精简服务器。这对于SSL测试非常有用。但是,我不能在同一端口上同时运行HTTP和HTTPS。显然,这使得测试从HTTP重定向到HTTPS非常令人沮丧。我可以在上面运行Apache或nginx服务器,但我真的不想在我的开发环境中遇到这样的麻烦 要启动两台服务器,一台用于SSL,另一台不用于SS

我的应用程序还没有完全准备好使用SSL,所以在此期间,我允许使用SSL,但不需要它。我确实要求某些控制器使用SSL,并强制重定向到HTTPS以在此类控制器中执行操作

我可以通过
精简启动--SSL
使用SSL启动精简服务器。这对于SSL测试非常有用。但是,我不能在同一端口上同时运行HTTP和HTTPS。显然,这使得测试从HTTP重定向到HTTPS非常令人沮丧。我可以在上面运行Apache或nginx服务器,但我真的不想在我的开发环境中遇到这样的麻烦

要启动两台服务器,一台用于SSL,另一台不用于SSL,我使用foreman,如下所示:

web: rails server
ssl: thin start --ssl -p 3001
这将启动端口3000上的HTTP服务器和3001上的HTTPS服务器。现在我的问题是。如何仅在我的开发环境上创建“智能重定向”策略,以便从HTTP重定向到HTTPS智能地将端口从3000更改为3001?谢谢