在wsgi文件中,你正在执行
from service import application,该操作仅导入你的
application方法。
更改为
from service import app as application,一切将按预期工作。
在你发表评论后,我想我会扩大答案:
你的wsgi文件是python代码-你可以在此文件中包含任何有效的python代码。安装在Apache中的wsgi“处理程序”正在此文件中查找应用程序名称,它将把请求传递给该文件。Flask类实例-
app = Flask(__name__)提供了这样的接口,但是由于调用了
appnot
application,因此在导入时必须为它加上别名-这就是from行的作用。
你可以-这样做很好-只需执行此操作
application = Flask(__name__),然后将Apache中的wsgi处理程序指向你的
service.py文件即可。如果
service.py是可导入的(表示在中的某处
PYTHONPATH),则不需要中间的wsgi脚本。
尽管以上方法可行,但实践不佳。wsgi文件需要Apache进程的许可才能工作。并且通常将其与实际源代码分开,后者应具有适当的权限,该源代码应位于文件系统上的其他位置。



