WSGI archivo no se carga el archivo de Python frasco en Apache 2.4 en Windows Server 2012

Jamie Diaz:

Estoy intentando ejecutar un script frasco que consulta una base de datos SQLite y muestra una API REST sólo para el interior de la red. Va a ser servido en Windows Server 2012 con Apache 2.4 con mod_wsgi. También estoy usando Python 3.7.

El error que estoy recibiendo en el registro de error es:

File "D:/sites/cifsearch/website/web.wsgi", line 7, in <module>\r, referer: 
     http://IP Address/  from app.py import app as application\r, referer: 
     http://IP Address/  ModuleNotFoundError: No module named 'app'\r, referer: http://IP Address/

web.wsgi está en el mismo directorio que app.py

Esto es lo que he escrito en web.wsgi. He copiado y pegado esto por lo que pude encontrar en Google como estoy todavía muy nuevo en esto.

import sys
import logging

logging.basicConfig (stream=sys.stderr)
sys.path.insert(0,'/')

from app.py import app as application

También le comenté a cabo:

if __name__ == "__main__":
     app.run()

en app.py según este sitio: https://flask.palletsprojects.com/en/1.1.x/deploying/mod_wsgi/ . Pero no creo que la solicitud está consiguiendo incluso tan lejos. Estoy sospechando, probablemente relacionado ruta o los permisos?

Elisabeth Strunk:

Su aplicación no está configurado como un paquete, por lo que la importación en su código wsgi que la da ModuleNotFoundError.

Poner su aplicación en un directorio llamado por ejemplo, myappy añadir un __init__.pyarchivo en el directorio que contiene

from .app import app

para que sea un paquete.

La estructura de directorios debe tener este aspecto:

web.wsgi
myapp/
    app.py
    __init__.py

Luego cambia de importlínea en el archivo de wsgi

from myapp import app as application

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=399300&siteId=1
Recomendado
Clasificación