Railsアプリケーションのために特別な設定があります。私のアプリはリバースプロキシの後ろにホストされており、何らかの理由でリクエストを書き換えています。アプリケーションが実行されるサーバーには、内部IPアドレスしかありません。リバースプロキシはパブリックアドレスを持ち、すべての着信要求をアプリケーションサーバーにリダイレクトします。Devailsを使ってRailsのリダイレクトのホスト名を変更する
問題は、すべてのリクエストがexample.com/my/url
となっている間に書き換えられ、アプリケーションサーバーに10.0.0.2/my/url
として送信されるという問題です。これは、例えば認証を要求し、ログインページにリダイレクトすることによって、deviseが機能します。送信されたリダイレクトには、最初に要求されたFQDNではなく、ローカルIPアドレスが含まれます。
リダイレクトで特定のホスト名を使用するようにRailsアプリケーションにどのように伝えることができますか?私はを使用してHTTP_HOST
を設定しようとしましたが、これはうまくいかず、手動でrequest.host
をbefore_filter
に設定しようとしました。