如何在apache2(数字海洋)上运行烧瓶应用程序

时间:2015-10-10 21:46:52

标签: python flask apache2

我正在尝试使用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) 

谢谢卡尔

1 个答案:

答案 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'