2012-03-22 2 views
0

devise-2.0.4.gemとdevise_ldap_authenticatable-0.4.4.gemでRails 3.2.1を実行しています。Railsは、httpsのサインイン/アウトを維持しないようにします。

すべてがHTTPで問題なく動作しています。ただし、HTTPSを使用するプロダクションにデプロイすると、ユーザーがログインした後、ブラウザーがHTTPに切り替わり、プロダクションURLはHTTPSのみをサポートするため、エラーが発生します。私が手作業でURLに "s"を追加すると、私はレールアプリには参加できません。アプリケーション自体は、HTTPSプロトコルの維持に問題はありません。

ログアウトと同様に、ログアウトリンクがHTTPSであっても、リンクをクリックするとHTTPになり失敗します。

このアプリケーションはHTTPSでナビゲートできるので、HTTPSプロトコルを維持するのに問題があると思われます。何か案が?現時点では、HTTPSを本番用にコーディングするのは気にしません。

答えて

1

SSLについてのDevise Wikiページを読んだことがありますか?私はあなたの問題を解決するかもしれないと思う:How To: Use SSL (HTTPS)。 deviseでHTTPSを使用するためのすべての手順がここで説明されています。

これが役に立たない場合は、ここであなたの開発者認証コードを投稿する必要があります。

+0

感謝を。私はenv.rbに追加しました: –

+0

今、私はDeviseがhttpsにリダイレクトしていることがわかります。これは良いことです。しかし、私はログイン時にこのエラーを受け取ります: == 1.2.3.4のGET "/ users/sign_in"を2012-03-23 10:29:08 -0700に開始しました == Devise :: SessionsController#newによる処理HTMLとして == https://MyCompany.com/users/sign_inにリダイレクト ==フィルタチェーンが#

+0

できますか?エラー出力を追加し、あなたの質問に特定のコードを工夫しますか?そこに出力をフォーマットすることができます。これは、コメントよりも読みやすい方法です。また、どのバージョンを使用していますか?おそらく、最新のデベロッパ・バージョンとldap-gemはお互いに素敵なプレイをしていないでしょうか? –

1

私は私のapplication_controller.rbでafter_sign_in_path_forを設定し、after_sign_out_path_for私の問題を解決しました:ポインタのための

# Tell Devise to redirect after sign_in 
def after_sign_in_path_for(resource_or_scope) 
    'https://www.xyz.com/' 
end 

# Tell Devise to redirect after sign_out 
def after_sign_out_path_for(resource_or_scope) 
    'https://www.xyz.com/' 
end 
関連する問題