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でカスタムコマンドを作り実行する

    DjangoでWEBアプリケーションを開発していてデータベースの集計などをバッチ処理したいときに、カスタムコマンドを作り実行する方法です。 今回はサンプルとしてmycommandアプリケーションを作成するので以下のコマン […]

    Posted on by press
    Django

    Djangoでマイグレーションをやり直す

    Djangoでマイグレーションをやり直す Djangoで開発中にマイグレーションを元に戻したり(ロールバック)、やり直したくなった時の方法です。部分的に戻す方法と初期化したい方法の2パターンを紹介します。 開発環境 まず […]

    Posted on by press

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

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

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