WEBGUARDIAN V3.0 以降において、
WEBGUARDIAN 検査サーバと通信を行う上位ノードの動作処理によりエラーが発生する注意事項がございます。
詳細につきましては、以下をご参照いただけますようお願いいたします。
1 内容
WEBGUARDIAN 検査サーバは、上位ノード(※1)から HTTP レスポンスがない状態で
TCP セッションを切断されると、クライアントに対してエラーを返します。
※1 上位プロキシーまたは接続先WEBサーバを指します
このときクライアント(ブラウザ)の画面上には WEBGUARDIAN 検査サーバが返したエラーメッセージが表示されますが、
実際には上位ノードの通信処理動作に起因する事象となります。
上位ノードがこのような通信処理動作を継続して行う場合、
その間 WEBGUARDIAN 検査サーバを経由してのWEBアクセスが困難になる場合があります。
2 詳細
WEBGUARDIAN 検査サーバは、クライアント(ブラウザ)から受け取った HTTP リクエストを上位ノードに中継し、
上位ノードから HTTP レスポンスを受け取ってクライアントに中継します。
しかしながら上位ノードを構成する一部のソフトウェアでは、過負荷等の特定の条件において、
WEBGUARDIAN 検査サーバが送信した HTTP リクエストに対して HTTP レスポンスを返さない状態で
強制的に TCP セッションを切断する場合があります。
このような手順での通信処理を上位ノードより受けた場合、WEBGUARDIAN 検査サーバは HTTP リクエストの送信元(クライアント)に対して
HTTP レスポンス『502 ProxyError』を返します。
クライアント (ブラウザ) |
|
WEBGUARDIAN 検査サーバ |
|
上位ノード |
|
|
|
|
|
|
|
|
|
HTTPリクエスト

|
|
|
|
|
|
|
|
|
|
|
|
|
HTTPリクエスト(中継)
  |
|
|
|
|
|
|
|
|
|
HTTPレスポンス
  |
|
|
|
|
|
|
HTTPレスポンス(中継)
  |
|
|
|
|
|
|
|
|
図1 通常のHTTP通信
クライアント (ブラウザ) |
|
WEBGUARDIAN 検査サーバ |
|
上位ノード |
|
|
|
|
|
|
|
|
|
HTTPリクエスト

|
|
|
|
|
|
|
|
|
|
|
|
|
HTTPリクエスト(中継)
  |
|
|
|
|
|
|
|
|
|
TCPセッション切断
  |
|
|
|
|
|
|
HTTPレスポンス (502 ProxyError)
  |
|
|
|
|
|
|
|
|
図2 502 ProxyError が発生するHTTP通信
本事象が発生した場合、WEBGUARDIAN 検査サーバのシステムログでは以下のようなメッセージが出力されます。
※システムログは、管理画面の [共通]-[検査サーバー管理]-[状況確認]-[詳細]-[システムログ] で確認可能です。
[error] [client <クライアントのIPアドレス>] proxy: error reading status line from remote server <上位ノードのIPアドレス>
[error] [client <クライアントのIPアドレス>] proxy: Error reading from remote server returned by <中継したリクエストのURL>
なお、WEBGUARDIAN 検査サーバから HTTP レスポンス『502 Proxy Error』を受信したクライアント(ブラウザ)では、
以下のような現象が発生します。
- 『502 ProxyError』のエラーメッセージが表示される
- WEB ページ上、一部の画像や動画が表示されない
- 画面レイアウトが崩れる
3 対処方法
本件問題に関して、WEBGUARDIAN での対処方法はありません。
上位ノード側のソフトウェアにて対処の有無を確認していただく必要があります。