PostgreSQLと通信するページで502 Bad Gateway


press
PostgreSQLと通信するページで502 Bad Gateway

PostgreSQLと通信するページで502 Bad Gateway

Djangoで開発したWebアプリでPostgreSQLと通信するページにアクセスした時に、502 Bad Gatewayが発生したので調べた内容と解決法です。

502 Bad Gatewayが発生後、DjangoのデバッグモードをTrueにして確認してみましたが、エラー内容は表示されなかったので、sudo less /var/log/uwsgi.logでuWSGIのログを確認したところ、以下のエラーが確認できました。
実際にはXXXXXはプロセス番号の数字です。

!!! uWSGI process XXXXX got Segmentation Fault !!!
*** backtrace of XXXXX ***

エラーの原因

調べるとpsycopg2が原因らしいので、pip uninstall psycopg2して確認されるのでyを押して実行します。そして、再インストールすると今度は以下のエラーが出ました。

ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

このエラーの前文を確認すると以下の文章がありました。

Error: b'You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.\n'

postgresql-server-dev-X.Yかlibpq-devのインストールが必要とあるので、sudo apt install libpq-devを実行してからpsycopg2を再インストールすると無事にインストール出来ました。そして502 Bad Gatewayも出ずに通常通りページが表示される様になりました。


株式会社ファントムへのお問い合わせ

群馬県でPythonを使ったAIやソフトウェアを開発している株式会社ファントムが運営しています。




    Show Comments (0)

    Comments

    Related Articles

    Django

    DjangoのFormに初期値を設定する

    DjangoのFormに初期値を設定する Djangoで生成したFormをhiddenにしたまま、あらかじめ設定しておいた初期値が入ったvalueをPOSTする方法です。 forms.pyでinitial=’ […]

    Posted on by press
    Django

    Dockerを使ってDjangoとPostgreSQL環境を構築(2)

    前回の内容が古くなってしまったので2021年版に更新します。 Dockerを使ってシンプルなDjangoとPostgreSQLの開発環境を構築する方法の2021年版です。以下の点が前回より変わった点です。・Volumeを […]

    Posted on by press

    最新情報をお届けします!

    メーリングリストに登録するとファントムの最新情報をお届けします

    お客様のメールアドレスを共有することはありません