Safariのリダイレクトエラー

Posted on 27th 1月 2009 in Web

SafariやGoogle ChromeのようなWebKitベースのブラウザで閲覧していると、まれに以下のようなエラーが表示される場合がある。

“http://www.example.com/” を開こうとして多くのリダイレクトが発生しています。あるページへのリダイレクトが設定されているページを開いたときに、リダイレクト先のページから元のページにさらにリダイレクトが設定されている場合にこうした現象が起きる場合があります。

多くの場合、WebアプリケーションやApache .htaccessの設定ミスによって、リダイレクトループが発生していると思われるが、ブラウザとWebサーバ側の実装に食い違いがあって発生する場合もある。

Safari
Webサーバからの302レスポンス(リダイレクト)に対しては、認証済みであるAuthorizationヘッダを返さない。

Google Chrome
Google ChromeはSafariの状況に加えて、WebサーバからHTTP Keep Aliveがセットされてこないと、401レスポンス(認証エラー)に対してAuthorizationヘッダを付与(キャッシュ)しない。

Webアプリケーションやリバースプロキシが、ブラウザから要求のあったURIと異なるURLをWebKitベースのブラウザに返すと認証したつもりでも、未認証となり何度も認証要求を繰り返すっぽい。

サーバ側でリダイレクトを使わず、まともに200で返して、Keep Alive(常にHTTP1.1)を使うようにすれば解決するかもしれない。

comments: 0 » tags: , このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

Comment

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>