1

これは、他の Rails 3 リダイレクト https に関する質問とは少し異なります。説明させてください。

Phusion Passenger でサイトを公開するには、サブドメインを作成し、www/railsフォルダーから へのシンボリック リンク (またはソフトリンクまたはエイリアス) を使用する必要がありました/home/user/app/railsapp

HTTPS を機能させるには (さまざまなドメインの問題のため)、このルートを実際に作成する書き換え mod が必要です。

https://my.site.com/rails

末尾の/railsルートに注意してください。

このルートはアプリには存在しません。だから私が必要としているのは、そのルートで入ってくるものを次のようにリダイレクトする方法です:

https://my.site.com/login

だから私はこれをやろうと思った、routes.rbファイルにはこれがある:

match '/rails' => 'sessions#redirect_to_login'

sessions_controllers.rb では:

  def redirect_to_login
    redirect_to login_path, :status => :moved_permanently
  end

これにより、アプリは見つからないという不平を言う/rais/login/ので、まだその/railsビットを探しています。

ログインしていないときにリダイレクトredirect_to "/"を送信するようなものを追加すると、ブラウザにリダイレクトが多すぎるというエラーが表示されます。my.site.com/login

redirect_to login_urlトリックもしなかった。

/railsそのサイトで https プロトコルを使用している場合は常にそのルートが追加されるため、すべてのリンクからそれを削除する方法が必要になるという意味で、少し複雑になります。たとえば、https://my.site.com/moviesは に変換されhttps://my.site.com/rails/moviesます。

を削除する/railsか、ログイン ページ以外のすべての https トラフィックを http にリダイレクトします。

これには比較的簡単な修正があると確信していますが、それを理解することはできません。

助けていただければ幸いです。

4

0 に答える 0