Wie man Gunicorn die Verwendung von Python 3 anstelle von Python 2 (502 Bad Gateway)

Ich versuche Gunicorn zu verwenden Python ist3 für eine Django-app, die ich machen will. Ich bin mit Digital Ocean ' s Django Bild, um loszulegen. Es kommt mit Django, Gunicorn und Nginx installiert und konfiguriert. Die Standard-Django-Projekt, kommt mit diesem Bild, scheint zu funktionieren für Python 2.

Habe ich apt-get'ed diesen Paketen.

  • Python ist3
  • Python ist3-psycopg2
  • Python ist3-dev
  • Python ist3-pip

Um zu versuchen, um Probleme zu vermeiden, habe ich dies auch getan.

  • pip uninstall django
  • pip3 install django

Ich rm -rf'ed Lager-Projekt und erstellt eine neue mit django-admin.py startproject django_project. django-admin.py verwendet Python 3 (nach der shebang). Später, ich benutze python3 manage.py startapp django_app zum erstellen einer neuen app.

Zu diesem Zeitpunkt funktioniert alles einwandfrei. Genau wie die Standard-app. Dann, in django_app/views.py ich dies tun, und es bricht.

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    # Python 2 and 3 - works fine
    # print('PRINTING')

    # Python 3 only - crashes
    print(1, 2, end=' ')

    return HttpResponse("Hello, world! This is my first view.")

Die Fehlerseite, die sagt, ich bin mit Python 2.7.6.

Okay, dann dachte ich, ich könnte installieren Gunicorn durch pip für Python 3, also Tue ich dies.

  • pip uninstall gunicorn
  • pip3 installieren gunicorn

Aber ich habe dann einfach am Ende mit 502 Bad Gateway. Wenn ich service gunicorn status bekomme ich gunicorn stop/waiting. Ich habe versucht service gunicorn restartaber es sagt immer noch gunicorn stop/waiting.

Habe ich ein which gunicorn und es installiert /usr/local/bin/gunicorn. Uhh... ich bin mir nicht wirklich sicher, was ich sonst noch versuchen könnte. Jegliche Hilfe würde sehr geschätzt werden. Danke.

InformationsquelleAutor der Frage 425nesp | 2014-05-29

Schreibe einen Kommentar