您的位置:首页 > 运维架构 > Apache

Python+Apache环境安装与配置

2016-05-02 01:11 459 查看
Python和Apache也有直接集成、CGI、FastCGI三种配置方式:

1.直接集成

直接将Python以mod_python模块的形式集成到Apache中。客户端请求到达apache,apache找到cgi脚本后,在服务器上直接使用指定python解释器来执行python脚本,然后将执行结果返回给client。如果要使用mod_python模块,那么mod_python可以让Python解释器直接成为apache的一部分,带来的直接效果就是使执行python
cgi脚本的速度大大提高了。

2.CGI

(1).apache安装,安装到/home/local/apache目录中
a)下载apache-httpd源码tarball
b)./configure --prefix=/home/local/apache
c)make
&& make install
(2).启动apache
./bin/apachectl start
备注,如果./conf/httpd.conf中监听的端口是 80的话,那么需要用root账号启动。如果监听的端口是大于1024的话,就可以使用其他的账号启动了。
(3)apache配置cgi程序的部署
a)修改httpd.conf配置文件,确保如下配置存在

LoadModulecgid_module modules/mod_cgid.so
ScriptAlias /cgi-bin/"/home/work/apache/cgi-bin/"
<Directory"/home/work/apache/cgi-bin">
AllowOverride None
Options +ExecCGI
Order allow,deny
Allow from all
</Directory>
AddHandler cgi-script.cgi .py .sh


备注:Apache HTTP server的高版本已经内置了CGI module,因此需要像FastCGI模块那样,还需要单独安装。
(4)编写CGI脚本,可以使用任何语言编写,例如shell,python,perl,ruby等等
以python为例如下,在cgi-bin目录下创建一个mycgi-test文件,内容如下:

#!/usr/bin/python

print 'Content-type:text/plain'
print

print"Hello Cooder"


备注:cgi脚本中,一定要有#!哦,不然服务使用什么平台来执行它。另外cgi脚本也不一定非要放到Apache安装目录下cgi-bin目录中,看你ScriptAlias指令是怎么指定的啦。

(5)测试
在浏览器中输入:
http://localhost:80/cgi-bin/mycgi-test

3.FastCGI
可以参见<<PHP+Apache环境安装与配置>>,类似的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: