httpd2.2 / python2.6 / mod_wsgi3.2 / mod_python3.3 编译录

 

每次做重复的事情,特别是还要啃文档,查Google的时候,是无比痛苦的,虽然敲键盘也很累,但我实在是想不到其它更好的记录的办法了……

 

下载的软件包:

httpd-2.2.15.tar.gz

mod_wsgi-3.2.tar.gz

mod_python-3.3.1.tgz

Python-2.6.5.tgz

 

编译参数及过程:

 

Python2.6 (成熟的东西就是简单...)

 

先确保zlib-devel已安装,否则python内zlib module将会不可用,ez_setup也无法安装,./configure后会列出哪些扩展库没有找到不可用

 

./configure --prefix=<installation_dir> --enable-shared

make 

make install

# 所有的可执行和lib都会被安装在<installation_dir>下

# 在Ubuntu9.10-32bit和Centos4.7-64bit上都是一键编译,与Windows的安装有得一拼

 

#echo "/usr/local/lib" > /ect/ld.so.conf.d/python.ld.conf

#ldconfig

#python2.6

 

Apache

通过configure来决定apache装在哪里,关闭默认的A模块,戓打开未默认的B模块,决定MPM模式,决定是否尽量使用so

./configure --prefix=<installation_dir> /

  --with-mpm=prefork

  --enable-mods-shared=most

  --enable-ssl

 

make

make install

# Apache本身编译和配置在各平台下都非常可靠,但是,在Apache上运行的插件,如下面,就……

 

Mod_Python

通过configure指定apache apxs的位置,python的位置,

 

# 这个东西比较操蛋
on line 142 of connobject.c replace
!(b == APR_BRIGADE_SENTINEL(b ) || with !(b == APR_BRIGADE_SENTINEL(bb ) ||


./configure --with-apxs=<apache_apxs_path> --with-python=<python_bin_path>

make

make install # 需要管理员权限,因为它要在Python库里加mod_python library

 

 

 

Mod_Wsgi

通过configure指定apache apxs的位置,python的位置,

 

 

./configure --with-apxs=<apache_apxs_path> --with-python=<python_bin_path>

make

make install

 

 

# 注意:当有新的模块加入时,apachectl -k restart 会导致某些segmentFault崩溃,需要先stop, 再start

 

 

你可能感兴趣的:(apache,python,centos,ubuntu,Path,64bit)