2016-09-02 4 views
0

今朝、適切に動作してから、クラウドフロントアカウントは、サービスを提供するのではなく、当社のウェブサイトに(301)リダイレクトしています。これを元に戻す方法はありますか?クラウドフロントは当社のウェブサイトにリダイレクトしています

昨夜私はPassengerをWebサーバーとして使用することからPumaに変更しました。その一環として、config.serve_static_files = trueをproduction.rbに変更しました。しかし、私がconfig.serve_static_files = falseに戻っても、クラウドフロントのURLは依然として私たちのホームページにリダイレクトされています。

これを修正する方法はありますか?次のように

+0

クラウドフロントは発信元へのリクエストでもリダイレクトが発生した場合にのみリダイレクトを送信すると信じています。まず、プーマを実行しているサーバーで利用可能なログでこれらのリクエストを探します。 –

+0

@FrederickCheungは、「原点への要求によってもリダイレクトが行われた場合」ということを明確にすることができますか?あなたは、どういうわけか私のサーバーが、クラウドフロントのリクエストを自分自身にリダイレクトしていると言っていますか?私が大規模なログファイルで探す必要のあるものはありますか? – Julie

+0

ブラウザがクラウドフロントに要求すると、クラウドフロントはサーバーから関連するアセットを要求します。そのリクエストが資産ではなくリダイレ​​クトになっているようです。私はリダイレクトの結果となる資産の要求を見ています。 –

答えて

1

は、いくつかの調査の後、問題の原因となった:

  1. nginxのは、明らかに301 HTTPからHTTPSへのリダイレクトがある場合でも、HTTPからpublic/ファイルを提供しています
  2. プーマは、ラックがpublic/を提供するために使用していますHTTPから公開ファイルが要求された場合、httpsに301リダイレクトを返します
  3. Cloudfrontはサーバーから301リダイレクトを受信すると(この場合はhttp)、301リダイレクトをユーザーに転送するだけで、そのため、ウェブサイトのhttpsに永久にリダイレクトされます。ファイルを受け取るのにクラウドフロントよりも。
  4. これを修正した設定では、当初のように「Httpのみ」にするのではなく、クラウドフロントのオリジンを「Match Viewer」に変更しました。その後、永続的なリダイレクト(301)が行われていたため、人々のキャッシュがクリアされるのを待たなければなりませんでした。

補足として、私はCloudfrontが301リダイレクトをクライアントに転送するべきではないと思います。それは私には理想的ではないようです。

関連する問題