簡體   English   中英

nginx django 502壞網關

[英]nginx django 502 bad gateway

我正在使用uWSGI和Nginx為我的Django網站(1.4版本)提供服務。 我的文件結構是django_mysite / django_mysite /,其中有一個wsgi.py文件。
我一直收到502 Bad gateway錯誤。 我有其他服務器運行nginx,他們工作正常。

我的nginx配置:

server {
  listen      80;
  server_name beta.example.com;

  keepalive_timeout 70;

  root /path/to/django_mysite/django_mysite;


  location root {
        root   html;
        uwsgi_pass   localhost:9000;
        uwsgi_param UWSGI_SCRIPT django_wsgi;
        include        uwsgi_params;
    }

  location / {
        uwsgi_pass   localhost:9000;
        include        uwsgi_params;
        uwsgi_param SCRIPT_NAME /django;
        uwsgi_param UWSGI_SCRIPT django_wsgi;
        uwsgi_modifier1 30;
    }
}

我的wsgi.py文件:import sys import os

sys.path.append('/path/to/django_mysite/')
 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_mysite.settings")

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

日志中的錯誤是:

*3 recv() failed (104: Connection reset by peer) while reading response header from upstream

謝謝

我找到的解決方案是這樣的:我創建uwsgi工作者的uwsgi.ini文件沒有指定套接字。 所以我創建了另一個.ini文件並為它創建了一個套接字。 我放入uwsgi_pass下的nginx conf文件中的那個套接字。 這是django用於配置uwsgi的網頁的鏈接。

https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/uwsgi/

我面臨着同樣的問題,但我以下列的方式將其搞定了。

如果您的項目中包含第三方應用程序,那么它應該安裝在您的服務器上,就像南方是第三方應用程序。 考慮在您的settings.py文件中包含south,然后南也應該安裝在您的服務器上。 如果該模塊在這里考慮南,已經安裝在服務器上然后嘗試升級它。 因為您可能在本地計算機上使用升級版本的模塊,並且在服務器中安裝了舊版本。

在我的情況下,問題在於uwsgi配置。 我在我的應用程序的uwsgi conf中添加了buffer-size = 65535,並且在服務器上解決了錯誤502的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM