Complex Python Bottle App + WSGI



我在单个文件夹中有一个按功能组织的python瓶应用程序,我想将我现有的樱桃用法转换为apache mod_wsgi。

文件夹结构如下所示:

- project
-- app.py (loads the webserver class and runs it)
-- app
--- common
--- logs
--- modules
--- tools
--- web
---- webserver.py

这种结构的原因是,普通代码可以在工具和Web中使用,没有任何问题。导入都是以"from app.common.blah import utility"的风格完成的。尝试设置mod_wsgi时,它希望加载一个简单的应用程序。

是否可以使用这样的文件夹结构运行mod_wsgi?如果没有,是否有任何建议来设置一个允许mod_wsgi的结构,以及在工具和 Web 等文件夹之间共享通用实用程序?

来自 Bottle 部署文档 关于部署:

您只需要一个提供应用程序对象的 app.wsgi 文件。mod_wsgi使用此对象来启动应用程序,并且应该是与WSGI兼容的Python可调用对象。

文件/var/www/yourapp/app.wsgi

import os
# Change working directory so relative paths (and template lookup) work again
os.chdir(os.path.dirname(__file__))
import bottle
# ... build or import your bottle application here ...
# Do NOT use bottle.run() with mod_wsgi
application = bottle.default_app()

在您的情况下,请编辑上面的代码片段以导入可能在您的app.py中定义的应用程序对象

最新更新