Rainbow Planet

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(JSP&サーブレット)のFORM認証を用いたログイン画面の開発

(0)目次&概説 (1) サーバー側JavaのFORM認証  (1-1) 認証の種類  (1-2) FORM認証の特徴  (1-3) FORM認証の実装概要 (2) FORM認証の実装手順  (2-1 …

Javaでファイルへの書き込みする方法の基礎(追記・上書き、改行の方法等)

<目次> (1) Javaでファイルへの書き込みする方法の基礎(追記・上書き、改行の方法等)  (1-1) STEP1:FileWriterクラスのインスタンス化  (1-2) STEP2:ファイルへ …

GitHubのWebAPIをコールしてユーザー情報を取得するサンプルプログラムの解説+エラー対応も2例紹介

(0)目次&概説 (1) 目的  (1-1) 記事の目的 (2) APIの概要  (2-1) APIとは?  (2-2) Web APIとは?  (2-3) Web APIの様々な呼び方   (2-3 …

Javaのenumでフィールドを複数定義したり、値を取得する方法

<目次> (1) Javaのenumでフィールドを複数定義したり、値を取得する方法  (1-1) enumでフィールドを定義・取得する  (1-2) enumでフィールドを複数定義・取得する (1) …

Servlet/JSPで日本語文字が「???」になる問題とFilterの活用について

(0)目次&概説 (1) 事象 (2) 原因 (3) 対処方法1  (3-1) フィルタクラスの新規作成  (3-2) フィルタクラスへのコード追加  (3-3) 疎通確認テスト (4) 対処方法2 …

  • English (United States)
  • 日本語
Top