apache python 模块mod_wsgi的编译安装

WSGI是一个通用的API底层Web服务器之间的映射和Python的Web应用程序的规范。WSGI本身就是Python的PEP 0333。WSGI规范的目的是提供一个共同的机制,举办了一系列不同的Web服务器,支持Python编程语言的一个Python的Web应用程序。

下载:

[root@htuidc src]# wget https://modwsgi.googlecode.com/files/mod_wsgi-3.4.tar.gz

[root@htuidc mod_wsgi-3.4]# ./configure --enable-shared

这里,必须用–enable-shared,生成动态库,否则会遇到wsgi不能编译的问题。

如果出现错误:config.status: error: cannot find input file: Makefile.in

yum install httpd-dev*

即可解决。

[root@htuidc mod_wsgi-3.4]# make && make install

安装信息最后会看到生成的mod_wsgi.so库:

chmod 755 /usr/local/apache/modules/mod_wsgi.so

配置:

修改httpd.conf配置,增加

LoadModule wsgi_module modules/mod_wsgi.so


注意mod_wsgi的要求WSGI应用程序入口点被称为“应用程序”。如果你想别的东西,那么你就需要配置的mod_wsgi的明确使用其他的名称。因此,不要去随意改变功能的名称。如果你这样做,即使你设置了一切正确的应用程序不会被发现。


HTTP请求处理脚本:

WSGIScriptAlias / /var/www/logpress/index.wsgi

<Directory "/var/www/logpress">

AllowOverride FileInfo

AddHandler mod_python .py

PythonPath "['/var/www/logpress'] + sys.path"

PythonHandler index

PythonDebug On

Order allow,deny

Allow from all

</Directory>