在 apache 上部署 Flask 应用程序时出错

Error while deploying flask app on apache

我有一个文件 manage.py,

import os
from app import create_app
app = create_app(os.getenv('FLASK_CONFIG') or 'default')
if __name__ == '__main__':
    app.run()

manage.py 在调试模式下测试时工作正常。但是,我无法在 apache 上托管它。

我的 wsgi 文件:start.wsgi

from manage import app as application
import sys
sys.stdout = sys.stderr

虚拟主机:

<VirtualHost *:80>
   ServerName domain.com
   WSGIDaemonProcess manage user=user group=user threads=5
   WSGIScriptAlias / /var/www/apioflifeapp/app/start.wsgi
   <Directory /var/www/apioflifeapp/app>
        Require all granted
        Options all
        AllowOverride all
        Allow from all
   </Directory>
</VirtualHost>

错误日志中的错误

 [Sat Feb 21 10:55:47.329450 2015] [:error] [pid 25422] [client 197.226.128.204:56062]   File "/var/www/apioflifeapp/app/start.wsgi", line 1, in <module>
    [Sat Feb 21 10:55:47.329601 2015] [:error] [pid 25422] [client 197.226.128.204:56062]     from manage import app as application
    [Sat Feb 21 10:55:47.329624 2015] [:error] [pid 25422] [client 197.226.128.204:56062] ImportError: No module named manage

我不明白为什么会出现导入错误

您需要从实际应用中导入应用名称,而不是manage。假设它是 apioflifeapp,您将在 start.wsgi 中导入以下内容:

from apioflifeapp import app as application