Flaprints应用程序与蓝图+ uWSGI + nginx返回404' s(没有路由?)

时间:2014-04-30 07:17:49

标签: nginx flask url-routing uwsgi

使用nginx + uWSGI成功部署了一个最小的Flask应用程序后,我对此感到困惑。

from flask import Flask
from bsfdash.users import users
from bsfdash.dashboard import dashboard 
from bsfdash.customs import customs
from bsfdash import app 

if __name__ == '__main__':
    app.register_blueprint(users)
    app.register_blueprint(dashboard)
    app.register_blueprint(customs)

    app.run()

为了确认我的nginx和uWSGI设置是否正确,我使用@ app.route('/')的简单“Hello World”Flask应用程序测试,返回“嗨!” - 它按预期工作。

但是,上面显示的应用程序使用localhost:5000上的flask web-server按预期工作 - 但是在通过uWSGI调用时不会路由@ dashboard.route('/')蓝图。

我发现有关使用uWSGI部署包含蓝图的模块化Flask应用程序的零信息。

为什么这个应用程序可以作为Flask Web服务器运行,但是通过uWSGI进行脑力激荡?

1 个答案:

答案 0 :(得分:0)

您能否提供有关您的应用结构的更多信息? 我有一个工作的Flask应用程序,蓝图看起来像,如果它可以帮助你。

App / run.py:

import sys
sys.path.append("/subone")

from iel import app, manager
from flask.ext.migrate import MigrateCommand

manager.add_command('db', MigrateCommand)

app.debug = True
manager.run()

应用/子一/ <强> __初始化__ 的.py

from flask import Flask
from flask.ext.script import Manager
from subone import models

app = Flask(__name__)
app.config.from_object('settings')

manager = Manager(app)

#Blueprints
from catalog.views import catalog
app.register_blueprint(catalog)

from login.views import login
app.register_blueprint(login,url_prefix="/login")

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

App / subone / catalog / __ init __ .py:

from flask import Blueprint