Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Java JSP/Servlet

502 Proxy Error : Reason: Error reading from remote serverの原因と解消法メモ

投稿日:2020年10月6日 更新日:

<目次>

(1) 502 Proxy Error : Reason: Error reading from remote serverの原因と解消法メモ
 (1-1) 発生状況・エラーメッセージ
 (1-2) 原因
 (1-3) 対処方法
  (1-3-1) タイムアウト時間の延長
  (1-3-2) データベースの再起動

(1) 502 Proxy Error : Reason: Error reading from remote serverの原因と解消法メモ

このエラーは正直全貌が把握できておらず、断片的な情報となり恐縮ですが、少しでも苦戦している方の参考になればと思い備忘を残します。

(1-1) エラー概要

エラーの発生状況は私の場合、開発したJSP/Servletの画面を確認中に発生しました。特殊なオペレーション等はしていなかったのと、再現性がなく突発的に起きた印象でした。しかし、502エラーという事でサーバ側に何かしら問題があるとして調査を行いました。

(エラーメッセージ)

502 Proxy Error

Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request GET /.

Reason: Error reading from remote server

(図111)実際のエラーが画面

 
目次にもどる

(1-2) 原因

想定される原因で一番多いのがApacheタイムアウトかも知れません(※調べた中では一番多かったと思います)。

(1-2-1) Apacheのタイムアウト

Apacheをリバースプロキシサーバ等で利用している際に、バックエンド(=APサーバやDBサーバも??)がタイムアウトを起こした可能性があります。

(図121)

⇒(参考)Apacheのリバースプロキシについて
⇒(参考)Apache公式ページ
⇒(参考)エラー関連ページ①
⇒(参考)エラー関連ページ② 

目次にもどる

(1-3) 対処方法

(1-3-1) タイムアウト時間の延長

処理時間不足によるタイムアウトが原因の場合、Apacheの設定ファイル(XXX.conf)の「ProxyPass」の項目にタイムアウトの設定等を追加する事で解消する可能性があります。

(Before)
ProxyPass / http://[your URL]
↓
(After)
ProxyPass / http://[your URL] retry=1 acquire=3000 timeout=600

(1-3-2) データベースの再起動

私の場合、結局はDB接続関係のエラーでした。

まず事象の切り分けとして、DB接続しない画面は問題なく表示できており、無限ループになったのはDBへのアクセスが発生する画面でした。

そこからリスナー再起動やDB再起動を試し始め、DBに関してはSHUTDOWN IMMEDIATEでもシャットダウンされなかったため、最終手段のSHUTDOWN ABORTで止めて再起動したら復旧しました。

リスナーやDBの再起動については以下をご参考ください。

https://rainbow-engine.com/sqldeveloper-connect-error/

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Java, JSP/Servlet

執筆者:


comment

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

関連記事

Javaのswitch-case文の構文や使い方を紹介+UFOキャッチャーの座標移動プログラムも紹介

<目次> (1) Javaのswitch-case文の構文や使い方を紹介  (1-1) switch-caseの構文  (1-2) else-if文との比較 (2) サンプルプログラムの紹介  (2- …

JVMの基本アーキテクチャと各サブシステム等の概要説明について

(0)目次&概説 (1) 記事の目的 (2) Javaのアーキテクチャ概要・概観 (3) JVMのアーキテクチャ概要  (3-1) JVMの概観  (3-2) JVMの主要サブシステム1:Class …

Javaのフォーム認証でオリジナルの(元の)リクエスト情報を取得する方法

<目次> (1) Javaのフォーム認証でオリジナルの(元の)リクエスト情報を取得する方法  (1-1) 構文  (1-2) サンプルプログラム   ●JSP(要求ページ)   ●JSP(ログインペー …

JavaScriptでformをPOSTリクエストでsubmitするプログラムの例

  <目次> (1) JavaScriptでformをPOSTリクエストでsubmitするプログラムの例  (1-1) 概要  (1-2) 構文  (1-3) サンプルプログラム  (1-4 …

JavaのBigDecimalの使い方+初期化・四則演算・余り・累乗等の主要用途も紹介

<目的> (1) JavaのBigDecimalの使い方+初期化や四則演算・桁数設定等の主要用途も紹介  (1-1) 宣言の方法  (1-2) 代表的な用途(足し算・引き算・掛け算・割り算)  (1- …

  • English (United States)
  • 日本語
Top