2016-06-23 2 views
2

になります。redirect_to example_pathをコントローラに使用すると、プロトコルはhttpに変更されます。プロトコルを元のリクエストと同じままにしたいとします。私は、HTTPSを使用している場合、私はhttps://example_pathにリダイレクトされるようにしたい...と私はhttp://example_pathにリダイレクトされるようにしたいのhttp ...redirect_toはhttpsプロトコルを失い、http://

を使用している場合、私は私がconfig.force_ssl = true使用することができます知っているが、私は、SSLはオプションになりたいです。

+0

答えとしてあなたのソリューションを選択し、答えとしてあなたのソリューションを追加していない質問の一環としてしてください。 – Leito

答えて

1

redirect_toはargsハッシュでプロトコルキーを受け取ります。あなたはすることができます

redirect_to example_path, protocol: request.protocol 

あなたがソートする必要があります。それがうまくいかない場合は私に教えてください。

+0

ありがとう、私はそれが私のnginx設定で問題であることがわかった。私は今すべてのレールの変更なしで働いている –

+0

@ JoeWalsh、何がnginxのソリューションでしたか? – 244an

0

@ ruby​​_newbieの回答は私のためには機能しませんでした。 redirect_toStringは、 argを無視しました。また、私はプロキシでSSL終了を使用しているので、Railのプロトコルはユーザーが使用しているものと同じではないかもしれません。あなたはonly_pathを使用することができますが、私は次のようにprotocol: '//'を使用して終了:

redirect_to controller: 'example', action: 'show', protocol: '//' 
関連する問題