我对没有名为app importerror的模块感到困惑。当我使用名称FlaskApp时,一切正常,当我将名称更改为xyzApp时,它没有,我得到ImportError。
以下是错误代码:
Target WSGI script '/var/www/xyz/xyzApp.wsgi' cannot be loaded as Python module.
Exception occurred processing WSGI script '/var/www/xyz/xyzApp.wsgi'.
Traceback (most recent call last):
File "/var/www/xyz/xyzApp.wsgi", line 11, in <module>
from xyzApp import app as application
ImportError: No module named 'xyzApp'
Target WSGI script '/var/www/xyz/xyzApp.wsgi' cannot be loaded as Python module.
Exception occurred processing WSGI script '/var/www/xyz/xyzApp.wsgi'.
Traceback (most recent call last):
File "/var/www/xyz/xyzApp.wsgi", line 11, in <module>
from xyzApp import app as application
ImportError: No module named 'xyzApp'
Flask应用程序的结构如下所示:
/var/www/xyz/
|--xyzApp.wsgi
|--/instance/config.py
|--/xyzApp
|--/static
|--/templates
|--__init__.py
当我使用类似结构但使用FlaskApp文件夹进行应用程序时,它可以正常工作。这是为什么? 有效的结构如下:
/var/www/FlaskApp/
|--flaskapp.wsgi
|--/FlaskApp
|--/static
|--/templates
|--__init__.py
除了xyzApp:
之外,flaskapp.wsgi文件的内容是相同的#! /usr/bin/python3
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApp")
from FlaskApp import app as application