hub - tiangolo uwsgi nginx flask python3 6
Frasco en uWSGI que causa 500 Internal Server Error al importar SQLAlchemy (1)
¿ Instalas uwsgi-emperador a través del gestor de paquetes también?
Por favor, asegúrese de que está rastreando con uwsgi correcto.
A veces instalar uwsgi desde pip y apt hace que este problema. Yo mismo reemplazo el /usr/bin/uwsgi
con /usr/local/bin/uwsgi
en /etc/init.d/uwsgi
.
También debe verificar los permisos de ruta y el acceso a db, si corresponde.
Todo funciona bien cuando ejecuto el matraz a través de source venv/bin/activate && python run.py
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello, world!"
if __name__ == "__main__":
app.debug = True
app.run(host=''0.0.0.0'', port=8080)
Pero cuando ejecuto la misma aplicación con nginx / emperor.uwsgi, cada clic en el servidor devuelve 500. Si hago un comentario sobre la importación de SQLAlchemy, la página se carga, como se esperaba.
Según este hilo , he intentado habilitar lazy / lazy-app, pero no tiene ningún efecto. Flask está elevando la excepción, por lo que nginx / uwsgi no está registrando nada.
Intenté utilizar from werkzeug.debug import DebuggedApplication
pero aún from werkzeug.debug import DebuggedApplication
absolutamente el "Error interno del servidor" en mi navegador.
Config:
[uwsgi]
uid = http
gid = http
socket = /var/run/project.uwsgi.sock
chown-socket = http
chmod-socket = 664
pidfile = /var/run/project.master.pid
master = true
lazy = true
lazy-apps = true
chdir = /srv/http/project
python-path = /srv/http/project
virtualenv = /srv/http/project/venv
module = run
callable = app
plugin = python
home = venv
Nada inusual.
source venv/bin/activate && pip list && deactivate
salida:
Flask (0.10.1)
Flask-SQLAlchemy (2.0)
itsdangerous (0.24)
Jinja2 (2.7.3)
MarkupSafe (0.23)
pip (6.0.8)
setuptools (12.0.5)
SQLAlchemy (0.9.9)
uWSGI (2.0.9)
Werkzeug (0.10.1)
Todos los sospechosos habituales están presentes.
Completamente en la oscuridad en este caso, ¿alguien sabe cómo depurar / manejar esto?