我看到创建用于mod_wsgi的WSGI文件的大多数指南要么为Django或Pylons设置它。但是,我想创建wsgi文件而不为任何特定框架设置它。我该怎么做呢。以下是wsgi脚本中用于Django的代码:
import os, sys
sys.path.append('/home/user/dev')
sys.path.append('/home/user/dev/site1')
os.environ['DJANGO_SETTINGS_MODULE'] = 'site1.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
mod_wsgi integration from google表示我需要将以下代码添加到WSGI脚本中以覆盖BASELINE环境(是的,我使用基线和特定于应用程序的virtualenv):
import site
site.addsitedir('/usr/local/pythonenv/PYLONS-1/lib/python2.5/site-packages')
如果我没有将它用于任何特定框架,我的WSGI脚本将如何?
编辑:这适用于Apache服务器
答案 0 :(得分:3)
对于PEP 333中的简单wsgi应用程序:
def simple_app(environ, start_response):
status = '200 OK'
response_headers = [('Content-type', 'text/plain')]
start_response(status, response_headers)
return ['Hello world!\n']
application = simple_app
换句话说,您根本没有 进行任何设置。您只需确保mod_wsgi可以找到符合模块中wsgi的application
对象。
出于安全原因,您确实应该在apache发布的任何目录之外的另一个模块中定义您的应用程序,并将wsgi文件中的代码限制为导入该模块并将wsgi应用程序绑定到{{{ 1}}变量。