ページが https:// であるかどうかを確認し、そうである場合は http:// にリダイレクトするようにリダイレクトを作成しました。
ただし、 https:// から渡されたフラッシュメッセージを使用したいのですが、リダイレクト中に消えるため、ユーザーには表示されません。だから、私は試しflash[:notice].keep
ましたが、それもうまくいきません。リダイレクトが発生し、何も表示されませんが、次のページで最終的にメッセージが表示されます。ここに私のコードがあります:
def turn_off_https
if (request.ssl? && params[:controller] != 'subscriptions')
flash[:notice].keep
redirect_to :subdomain => "www", :protocol => "http://"
end
end
基本的に、https:// にしたいサイトのページは 1 つしかありませんが、それを追加した後、ユーザーがアクセスする他のページには https:// があります。そのため、この before_filter をアプリケーション コントローラーに追加して、確実に http に戻すようにしました。リダイレクト時に通知が表示されるようにするにはどうすればよいですか?
また、そのメソッドのredirect_toに「:notice」を追加しようとしましたが、メッセージをパラメーターとしてURLに入れただけで、実際にはページにロードしませんでした