mod_wsgi
子车心思
2023-12-01
http://modwsgi.readthedocs.org/en/develop/
1. mod_wsgi
mod_wsgi实现了一个简单易用的Apache模块,可负载任何支持Python的WSGI规范的Web应用程序。基于不同的需求mod_wsgi有两种不同的安装方式。
第一种方式是作为传统的Apache模块安装到已有的Apache中。按此方式,你需要手动配置Apache以加载mod_wsgi,并将Web请求传递给你的WSGI应用程序。
第二种方式是使用Python的pip命令从PyPi安装,这会将mod_wsgi构建并安装到你的Python安装或虚拟环境中,然后可用mod_wsgi-express程序,
使用一个自动生成的配置,从命令行将mod_wsgi同Apache一起启动。这种方法不要求你自己对Apache做任何配置。
两种安装方法都适合生产环境部署。如果希望在Docker容器中使用Apache和mod_wsgi来负载你的WSGI应用程序,使用mod_wsgi-express的方法是最好的解决方案。
当在部署Python web应用程序的过程中使用mod_wsgi时,后者也是一个更好的方法,因为你可以直接在终端(terminal)运行它。
2. 项目状态
很多用户拒绝自己直接从源码编译mod_wsgi,因此卡在他们的Linux发行系统提供的更老的mod_wsgi版本上。
老版的文档位于Google Code网站上:
https://code.google.com/p/modwsgi/wiki/WhereToGetHelp
全部文档索引:
http://code.google.com/p/modwsgi/w/list
新的mod_wsgi-express功能的文档在Google Code上不存在,但PyPi上关于mod_wsgi有文档说明:
https://pypi.python.org/pypi/mod_wsgi
3. 安全问题
由于mod_wsgi 3.4及之前版本的安全问题,确保你在使用3.5或之后的版本。
很多Linux发行系统依旧使用老的过期的版本,它们已经不被支持,因此极力推荐你避免使用Linugx系统提供的二进制版本程序(mod_wsgi),
而是从源码安装mod_wsgi, 这样确保你使用了最新的版本。
4. 开始使用
开始使用mod_wsgi, 推荐你从简单的'Hello World!'应用程序开始。
在你使一个简单的'Hello World!'应用程序运行起来之前,不要尝试依赖web框架如Django, Flask或Pyramid,来使用Python的Web应用程序。
简单的WSGI应用程序将验证你的mod_wsgi安装能否正常运行,并且让你对配置Apache有一个基本的理解。
在传统的安装Apache和mod_wsgi的方式的步骤描述中,你可以找到一个简单的'Hello World!'应用程序:
Quick Configuration Guide
https://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide
注意到除非你使用Windows(无此选择),你应该总使用mod_wsgi的守护模式。这不是默认模式,所以你需要按照指定步骤来启动守护模式。
对于使用mod_wsgi运行Python WSGI应用程序更简单方法,也可以看看mod_wsgi-express, 详细描述在:
https://pypi.python.org/pypi/mod_wsgi
5. 安装
从源码编译安装mod_wsgi, 对于类UNIX操作系统,如Linux和MacOS X,参考:
https://code.google.com/p/modwsgi/wiki/InstallationInstructions
6. 配置
快速配置指南
https://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide
配置指南
https://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide
配置指令
https://code.google.com/p/modwsgi/wiki/ConfigurationDirectives