Apache mod_wsgi 安装与配置完全指南
mod_wsgi Source code for Apache/mod_wsgi. 项目地址: https://gitcode.com/gh_mirrors/mo/mod_wsgi
项目基础介绍及主要编程语言
Apache mod_wsgi 是一个用于在 Apache HTTP Server 上部署 Python web 应用的模块,它实现了符合 WSGI 标准的接口。这个项目由 Graham Dumpleton 开发并维护,适用于任何遵循 WSGI 协议的Python应用,是将Pythonweb应用集成到Apache服务器的常用解决方案。主要编程语言为 C 和 Python。
关键技术和框架
- WSGI (Web Server Gateway Interface): 是一种Python Web应用程序或框架与Web服务器之间通信的协议。
- Apache HTTP Server: 世界领先的开源HTTP服务器软件,提供稳定、高效的服务。
- mod_wsgi: 实现了WSGI接口的Apache模块,使Python web应用能够直接运行于Apache上。
准备工作和详细安装步骤
系统要求
- Apache: 必须是一个完整的Apache安装,包括对应的开发包(如
apache2-dev
或httpd-devel
)。 - Python: 需要完整安装,并且有相应的开发包(例如
python-dev
或python3-devel
)。支持版本从3.8及以上。 - 对于MacOS用户,由于系统限制,仅推荐通过pip方式安装,并确保已安装Xcode命令行工具。
- Windows用户需准备Apache Lounge提供的Apache发行版,以及正确的环境变量配置。
安装步骤
方法一:通过CMMI方式安装到Apache
- 确保依赖:确保满足上述系统要求,安装Apache和Python的相关开发库。
- 下载源码:从 GitHub 下载最新源码或直接克隆仓库。
- 编译安装:
注意:可能需要管理员权限执行git clone https://github.com/GrahamDumpleton/mod_wsgi.git cd mod_wsgi ./configure make sudo make install
make install
。
方法二:通过Python pip安装
-
安装mod_wsgi至Python环境:
pip install mod-wsgi
对于Windows或特殊情况下的MacOS,确保设置正确路径或使用
mod_wsgi-standalone
。 -
配置Apache以使用mod_wsgi:
- 在Apache的配置文件(通常为
httpd.conf
或在sites-available
目录下)添加以下示例配置:LoadModule wsgi_module "/path/to/python/site-packages/mod_wsgi/server/mod_wsgi-py38.so" # 路径依你的Python安装而异 WSGIScriptAlias / /path/to/your/app.wsgi <Directory /path/to/your/app> <Files app.wsgi> Require all granted </Files> </Directory>
- 在Apache的配置文件(通常为
-
创建WSGI应用:你需要有一个
app.wsgi
文件来作为WSGI应用的入口点,例子如下:def application(environ, start_response): status = '200 OK' output = b'Hello World!' response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(output)))] start_response(status, response_headers) return [output]
-
重启Apache:更改配置后,务必重启Apache服务以加载mod_wsgi模块。
使用mod_wsgi-express(简化开发)
若在开发环境中,可以利用 mod_wsgi-express
进一步简化部署过程:
-
安装mod_wsgi-express:
pip install mod-wsgi-server
-
启动服务:
mod_wsgi-express start-server --wsgi-file=/path/to/your/app.wsgi
这会自动配置并启动一个内置的Apache服务器,无需修改Apache的主配置文件。
确保每一步骤后都检查错误日志以便调试。此教程适用于初学者级操作,但实际情况可能因具体环境差异而有所不同,适当调整以适应您的系统环境。
mod_wsgi Source code for Apache/mod_wsgi. 项目地址: https://gitcode.com/gh_mirrors/mo/mod_wsgi