Erste Fläschchen zu verwenden Python ist3 (Apache/mod_wsgi)

Habe ich einen einfachen "Hallo Welt" Kolben-app läuft.

Bin ich auf Ubuntu 14.04 mit Apache 2.4. Ich habe installiert mod_wsgi.

Habe ich einen ~/web/piFlask/venv/ zu halten, ein virtualenv-erstellt Python2 mit Kolben installiert.

Aber ich möchte meine flaskapp importieren Sie eine Python ist3.x-Modul habe ich geschrieben.

Was muss ich tun, um dies möglich zu machen?

Habe ich versucht die Schaffung einer ~/web/piFlask/venv3/ und ändern ~/web/piFlask/piFlask.wsgi:

import os, sys

PROJECT_DIR = '/home/pi/web/piFlask'

activate_this = os.path.join(PROJECT_DIR, 'venv3/bin', 'activate_this.py')
execfile(activate_this, dict(__file__=activate_this))
sys.path.insert(0, PROJECT_DIR)

from piFlask import app as application

application.debug = True

Aber ich glaube nicht, dass dies ausreichend ist. Diese .wsgi ist in der Tat eine Python-Datei ausgeführt werden, die von mod_wsgi, die ich bin sicher, dass wird ein Py2.x-interpreter zu tun die Ausführung.

Also wenn ich verstehen richtig, mod_wsgi feuert bis das system in Python, um dies auszuführen .wsgi, die wiederum in das Feuer bis mein ~/web/piFlask/venv/ - interpreter, um tatsächlich die Anforderung nicht verarbeiten.

Ich denke, dass ich überzeugen konnte, mod_wsgi verwenden entweder eine system-Python ist3 oder meine eigenen venv3/... durch Einstellung WSGIPythonPath /home/pi/web/piFlask/venv3/lib/python3.4/site-packages in /etc/apache2/mods-available/wsgi.conf

Aber ich fand eine Anleitung irgendwo, die sagt, Sie haben zu kompilieren mod_wsgi für Py3, und der Boden schnell heraus fällt zu diesem problem.

InformationsquelleAutor P i | 2015-06-04
Schreibe einen Kommentar