今天尝试了一下搭建python+apache的环境,记录在这里,希望对大家有用.

一.安装apache(apache2.2.15)
http://httpd.apache.org 下载最新的apache源码,解压后进入目录:
我想把apache安装到/home/dantezhu/apache下,所以执行如下命令
执行:

执行:

这样apache就装好了,apache的配置我就不说啦,不过在这里不我这里启动的时候会报错,所以就把httpd.conf中的

注释掉就好了。

二.安装python(python2.6)

我的python安装目录是 /usr/local/lib/python2.6/

三.安装mod_python(mod_python3.3.1)
(请用root权限执行)
www.modpython.org下载源码包,解压后进入目录:
执行:
(这个命令分别指定了apache和python的目录)

执行:

在这里编译会有报错,到
https://bugzilla.redhat.com/show_bug.cgi?id=465246
下载patch,并执行

执行:

会在/usr/local/lib/python2.6/site-packages/下生成一个mod_python目录
同时在./src/.libs/下生成了一个mod_python.so,将这个so拷贝到apache的modules目录,并在httpd.conf中加入

四.测试
1)在httpd.conf中加入

同时在

加入

2)在apache目录下建立一个py目录,在里面新建一个文件index.py,内容如下:

(注意:PythonHandler index ,这里的名字index决定必须用index.py来测试)

浏览器输出:

1

参考资料:
http://man.chinaunix.net/develop/python/mod_python/mod_python.html

python单进程能否利用多核cpu的测试结论

在很早的时候,就听网上的文章说: python有GIL,所以在单进程内,即使使用多线程也无法利用到多核的优势,同一时刻,python的字节码只会运行在一个cpu上。 ...

阅读全文

python常用web框架性能测试(django,flask,bottle,tornado)

测了一下django、flask、bottle、tornado 框架本身最简单的性能。对django的性能完全无语了。 django、flask、bottle 均使用gunicorn+gevent启动...

阅读全文

手机应用/服务器开发的一些总结(一)

经过这么久在android客户端和服务器端的开发,感觉还是积累了不少东西想要和大家分享一下,但是好想单独拎一个点出来又不太值得,所以就汇集到一起写成系列吧...

阅读全文

  1. python的各个web框架都可以做server的 不一定要靠apache这样的webserver
    当然静态文件可能须要 另外 nginx更好 推荐给你

    [回复]

    christian_zeng 回复:

    各个框架里的Server只是开发时用的快捷服务器,不能用于产品环境,很多服务器对多线程都无法很好的支持!!

    [回复]

    Dante 回复:

    确实,在公司甚至并没有使用apache作为CGI的外网服务器,而是用了公司内部写的webserver,不过只支持C/C++的CGI,而写C/C++的CGI实在太痛苦……不是外网服务还是尽量避免……

    [回复]

    MadPer 回复:

    nginx很好,但不一定就更好,各有优点吧…

    [回复]

    无限 回复:

    就这个案例来说 要 webserver+python
    我觉得nginx更好
    因为我们公司的生产服务器就是这么搭配的 我的工作有一部分就是干这个
    我是 nginx + python(web.py + fastcgi)

    [回复]

    Dante 回复:

    呵呵,之前一直没有nginx呢,有空尝试一下~~~

    [回复]

  2. 像博主这么平易近人的高手都在用VIM,让我们这些用emacs的小白们怎么办呀…强烈抗议!强烈要求博主今后让自己的儿子(女儿)长大后用emacs,开博教我们怎么用emacs!

    [回复]

    Dante 回复:

    过奖过奖,其实我只是用vim比较早而已啦~~~

    哈哈,其实你可以好好研究emacs嘛,这样就可以向大家普及emacs啦~~
    ps:其实我的电脑也一直装着emacs呢,不过不太会用,呵呵~

    [回复]

    MadPer 回复:

    博主,我又几个有关职业方向方面的问题想请教,不知博主是不是愿意,以及什么时间方便?

    [回复]

    Dante 回复:

    呃,其实我入职场也才几年,不敢妄加指导呢……
    MadPer也已经工作了吧?

    [回复]

    MadPer 回复:

    小弟大一,软件工程专业,现就读于中山大学,目前还只是个麻瓜,所以想请教下前辈~

    [回复]

    ET 回复:

    话说你是09级的吗?

    [回复]

    MadPer 回复:

    好像忘了最重要的一句话,还没工作…还早着工作呢,连实习经验也还木有…

    [回复]

  3. 由于linux的python终端不支持readline,所以想重编一下,却突然想起来python官网的下载链接被屏蔽掉了……

    可以去这里下载:
    http://www.python.org/ftp/python/2.6.5/Python-2.6.5.tar.bz2
    如果直接下载不来,就把这个链接放到迅雷里……

    还有如果想编译加入readline的话,
    需要调用如下命令:
    ./configure –enable-readline

    [回复]

    itxx 回复:

    use ipython

    [回复]

  4. Pingback: windows下apache,python,django,mod_python的安装 | 包子

  5. Pingback: 老夏的部落格子 » Blog Archive » ubuntu10.10下搭建Apache+Python+MySQL开发环境 [简单版]

  6. 你好, 最近研究python,看到你的文章很好,多谢,顺便有个问题想问一下,你如何推广自己的blog,我也有blog,地址 glools.just-life.me, 但是访问量很低,求赐教,多谢。

    [回复]

    www.cclove.me 回复:

    你有博主那么牛么

    [回复]