对Flask index.py的更改未加载

时间:2014-07-14 00:54:58

标签: python apache flask wsgi vps

我正在使用Flask开发一个非常简单的Web应用程序,我正在尝试将其部署到Digital Ocean VPS。我用apache2和WSGI运行它。 Here's the git repo。我在devops上很糟糕,所以我不知道为什么这不起作用。

/var/www/VAWomensHealth/我有一个名为VAWomensHealth的烧录应用程序的文件夹和一个VAWomensHealth.wsgi文件,如下所示:

#!/usr/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/VAWomensHealth/")

from VAWomensHealth import app as application
#from app import app as application
application.secret_key = 'Add your secret key'

我的index.py文件如下所示:

app = Flask(__name__)

@app.route('/')
def index():
    return render_template('index.html')

@app.route('/feeds')
def feeds():
    return render_template('feeds.html')

if __name__ == '__main__':
    app.run(debug=True)

我的VAWomensHealth.conf /etc/apache2/sites-enabled/内容如下:

<VirtualHost *:80>
        ServerName bagbot.com
        ServerAdmin chris@example.com
        WSGIScriptAlias / /var/www/VAWomensHealth/VAWomensHealth.wsgi
        WSGIScriptReloading On
        <Directory /var/www/VAWomensHealth/VAWomensHealth/>
            Order allow,deny
            Allow from all
        </Directory>
        Alias /static /var/www/VAWomensHealth/VAWomensHealth/static
        <Directory /var/www/VAWomensHealth/VAWomensHealth/static/>
            Order allow,deny
            Allow from all
        </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log
        LogLevel warn
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

因此,当我进入域名时,主站点会加载。当我编辑静态文件或模板时,这些更改会立即反映在域中。

但是,我对index.py所做的代码更改似乎没有生效(例如尝试让索引文件加载不同的模板)。这阻止我向我的应用添加其他路线。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

至于我(但我无法测试),您必须将名称index.py更改为__init__.py

或者您必须在index文件

中使用wsgi
from VAWomensHealth.index import app as application