我正在尝试使用apache2在数字海洋服务器上运行我的烧瓶应用程序。我按照本教程
https://www.digitalocean.com/community/tutorials/how-to-deploy-a-flask-application-on-an-ubuntu-vps
遵循本教程对我来说很好。但是,如果在run.py而不是 init .py中给出run.app()命令,我想知道如何运行应用程序?那么我该如何改变
/etc/apache2/sites-available/FlaskApp.conf
和
/var/www/FlaskApp/flaskapp.wsgi
教程中的设置似乎总是寻找
/var/www/FlaskApp/FlaskApp/__init__.py
我的run.py看起来像这样
#!/opt/local/bin/python
from flask import Flask
from app import app
#app.run(debug = True)
if __name__ == "__main__":
app.run(debug=True, host='127.0.0.1', port=5000)
谢谢卡尔
答案 0 :(得分:2)
你的wgsi服务器(在你的情况下是modwsgi)正在寻找一个可以使用的与wgsi兼容的python对象。您的run.py
文件正在抓取符合这些要求的Flask app
对象。
理论上,您需要做的就是更改flask.wsgi
文件内容(如您链接的教程所示):
#!/usr/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApp/")
from FlaskApp import app as application
application.secret_key = 'Add your secret key'
为:
#!/usr/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApp/")
from run import app as application
application.secret_key = 'Add your secret key'