私のアプリケーションは完全な SSL を使用する準備ができていないため、当面は SSL を許可しますが、必須ではありません。特定のコントローラーには SSL を要求し、そのようなコントローラーでのアクションには HTTPS へのリダイレクトを強制します。
経由でSSLを使用してシンサーバーを起動できますthin start --ssl
。これは、SSL テストに最適です。ただし、同じポートで HTTP と HTTPS を同時に実行することはできません。明らかに、これは HTTP から HTTPS へのリダイレクトのテストを非常にイライラさせます。上で Apache または nginx サーバーを実行することはできますが、自分の開発環境でそれを実行するのに苦労したくありません。
SSL 用と SSL なしの 2 つのサーバーを起動するには、次のように foreman を使用します。
web: rails server
ssl: thin start --ssl -p 3001
これにより、ポート 3000 で HTTP サーバーが起動し、3001 で HTTPS サーバーが起動します。私の質問は次のとおりです。HTTP から HTTPS へのリダイレクトでポートが 3000 から 3001 にインテリジェントに変更されるように、自分の開発環境でのみ「スマート リダイレクト」ポリシーを作成するにはどうすればよいですか? ありがとう!