ワテの場合、Windows10 Pro (64ビット版)でChrome(64ビット版)を使っている。
そのChromeのバージョンは、先日まではバージョン63(Chrome 63)だったのだが、このバージョン63には幾つかの脆弱性があった。
それらを修正した最新版 Chrome 64が2018年1月24日(水曜日)にGoogleから公開された。
正式なバージョン番号は以下の通り。
バージョン: 64.0.3282.119(Official Build) (64 ビット)
バージョン数字の64と、64ビット版を意味する64が同じ数字なので混乱する人もいるかもしれないが、まとめると、以下の二種類のChromeが最新版となる。
Chrome 64(64ビット版)
Chrome 64(32ビット版)
Chrome 64で400 Bad Requestエラーが出る
さて、ワテのパソコンもそのChrome 64にバージョンアップしたのだが、価格コムを開いたら、こんなエラーが出る。
図 Chrome64で価格コムを開いたらエラーが出る
そのエラーメッセージは以下の通り。
400 Bad Request
Request Header Or Cookie Too Large
nginx
なんのこっちゃさっぱり分からん。
この記事では、このエラー400 Bad Requestが出た場合の解決方法を解説する。
ワテもその通りやったら問題は解決した。
では本題に入ろう。
Chrome 64の新しい機能
ワテの調査では、Chrome64で採用された新しい機能のうちの主な物は以下の通り。
- 個別のタブ毎に音声をミュート機能
- 強力なポップアップブロッカー
- 53件の脆弱性修正
- 動画のオートプレイがデフォルトで無効
などである。
Chrome64のタブで音声ミュート機能が便利
ちなみに、個別のタブ毎に音声をミュート可能と書いているが、正確に言うと、サイトごとに音声ミュート機能が使える。
例えば、
Radikoのタブを二個開いていて、それぞれのタブで別々の放送局を聴いているとする。
まあそんな聴き方をする人は珍しいと思うが。
その時に、一方のタブでradikoの音声をミュートすると、他のタブにあるradikoの音声もミュートされる。
つまり、ミュート機能はサイトごと(要するに、ドメインごと)にOn/Off出来る。
今の場合なら
と言うドメインに対してOn/Offが出来る訳だ。
ミュートのやり方は簡単で、目的のタブを右クリックして、その中にある「サイトをミュート」を実行すると良い。
ミュートを使うもう少し現実的な場面としては、Chromeに複数のタブを開いてそれぞれのタブでYouTubeの動画を再生しているとする。
その時に一つのタブで音声ミュートを実行すると全部のYouTubeの音声がミュートされる。
さて、本題に戻って、400 Bad Requestの解決方法を紹介したい。
400 Bad Requestの解決方法
先ほど紹介したエラーメッセージを再び掲載すると以下の通り。
400 Bad Request
Request Header Or Cookie Too Large
Nginx
要するにCookie(クッキー)と言うのが原因らしい。
Cookie(クッキー)と言うのは、WEBサイトに関するデータを自分のパソコンに保存しておく技術だ。
例えば、アマゾンのサイトで買い物するなら、自分のアマゾンアカウントのユーザーIDやパスワードを入れてログインするが、それらの入力データはCookie(クッキー)の仕組みを利用して、あなたのパソコンに保存される。
従って、二回目以降、アマゾンで買い物する場合には、ログインに必要なユーザーIDやパスワードはブラウザーが記憶してくれているので、自分で入力する必要は無い。
そう言う便利な機能を使えるようにするのがCookie(クッキー)と言う仕組みなのだが、今回のエラーメッセージを見ると、「Cookie Too Large」と言うことなので、そのメッセージを信じるならクッキーに関して何か大きな予想外のデータが保存されているようだ。
理由は分からないが、こう言う場合はクッキーを削除してリセットするのが最も手っ取り早い。
ただし、ブラウザーの設定で全てのサイトのクッキーを削除してしまうと、アマゾンもヤフーショッピングも楽天も、ユーザーIDやパスワードがブラウザーから消えてしまうので、次回ログインする時には手で入力しなくてはならない。
まあ三つのサイトくらいなら手入力でも良いが、それ以外に、各種のインターネットバンキングとか、ツイッター、Facebookその他、多数のサイトのユーザーIDやパスワードが消えてしまうと復旧するのに時間が掛かる。
それはとても面倒だ。
今回は、ワテの場合には価格.comのサイトを開こうとした場合にエラーが出ている訳なので、価格.comのクッキーを削除するだけで良い。
では、それをやってみよう。
Chromeで個々のサイトのクッキーを削除する方法
Chromeの設定画面を開く(ブラウザー右上にあるアイコンをクリック)
開いた画面の最下部にある「詳細設定」をクリック
開いた画面を下にスクロールして、プライバシーとセキュリティを探す(下図)
図 プライバシーとセキュリティ(Chromeの書斎設定)
上図で、「コンテンツの設定」をクリックする。
ちなみにその下には「閲覧データを消去する」と言うのがあるが、そちらを選ぶと個別にクッキーを削除する事は出来ない。
一括で全クッキーを削除するとか閲覧履歴を全部削除するので、今回は使わない。
「コンテンツの設定」を開く
さて、「コンテンツの設定」をクリックすると以下の画面が出る。
図 コンテンツの設定の中のCookieを開く
上図で、Cookieをクリックすると下図が開く。
「すべてのCookieとサイトデータを表示」を開く
図 すべてのCookieとサイトのデータを表示
下図において、右上の検索欄にクッキー削除したい kakaku.com のアドレスを入力して検索する。
その検索結果は以下の通り。
図 クッキーを削除したいサイトのドメイン名で検索する(この例ではkakaku.com)
上図に一覧表示されているサイトが全て価格.comのサイトで有る事が確認出来たので、それで良ければ
「表示中のサイトを全て削除」ボタンをクリックする。
そうすると、以下の確認画面が出る。
ここで「すべてクリア」をクリックすると、価格.comに関するクッキーが完全に削除出来た。
これで完了なので、設定画面は閉じる。
400 Bad Requestエラーが解消したのかどうか試す
先ほどの 400 Bad Requestエラーが出ていた画面がもし残っていれば、その画面で
Windowsを使っている人は、CTRL + F5で強制再読み込み(=スーパーリロード)を実行する(下図)。
Macの場合は強制再読み込み(=スーパーリロード)は、ネット情報によるとCommand + R との事です。
図 クッキーを削除したらCTRL+F5(強制再読み込み)を実行する
その結果、無事に、価格コムのサイトが開けば成功だ。
もしエラー画面が残っていない場合には、ブラウザーで価格コムのサイトを開くと良いだろう。
それでエラー無しで正常に価格コムのサイトを開く事が出来れば成功だ。
まとめ
この記事では、Chrome 63をChrome 64にバージョンアップした直後に、以下に示す
400 Bad Request
Request Header Or Cookie Too Large
Nginx
と言うエラーメッセージが出て、特定のサイトを開く事が出来なくなった場合の解消方法を紹介した。
具体的な手順としては、クロムの設定画面を表示して、クッキーを個別に削除出来る画面に入る。
その中で、エラーが出たサイトのアドレス(URL)を検索欄に入力して、そのサイトに関して保存されているクッキーデータを探す。
見付かったクッキーデータを全部クリアすれば、400 Bad Requestエラーはほぼ間違い無く解決すると思う。
お試し下さい。
もしクッキーを削除してパスワードの再設定が必要になったら以下のページがお勧めです。
使い易さを考慮して作成したパスワード自動生成のページ
ワテ自作のパスワード自動生成ツールです。
https://www.wareko.net/WebPasswordGenCoreMVC/
是非お試し下さい。
英数字だけでなく、各種の記号をミックスしたパスワードが自動生成出来ます。
5文字~255文字までのパスワードが一度に生成出来ます。
必要な長さのパスワードをコピペして利用すると良いでしょう。
コメント