关闭

PYTHON+APACHE的方法及注意事项

3074人阅读 评论(0) 收藏 举报

10.1  安装

要让APACHE拥有运行PYTHON的能力,我们必须在APACHE服务器上,安装上PYTHON,和MOD_PYTHON下载地址
 其中不同版本的MOD_PYTHON对于所支持的APACHE版本及PYTHON版本的是有严格限制的,
各位在下载时必须注意,并找到对应的版本,否则可能会出现问题。

下载完毕后,对MOD_PYTHON进行安装即可。

10.2  配置

在完成安装后,我们就要对APACHE进行配置了, 请打开APACHE的配置档(httpd.conf),加入下列配置:
LoadModule python_module modules/mod_python.so ##请确定mod_python.so是否存在于APACHE目录下的modules文件夹中

<Directory "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs/test">
##<Directory>中写入要运行的python脚本所在的路径,这设定将对子目录有效
    AllowOverride FileInfo ##必须加上,否则PY不能运行。
    AddHandler mod_python .py ##说明在目录下所有.py文件都由MOD_PYTHON负责执行
    SetHandler mod_python
    PythonHandler test ##入口的PY名称,在这例子,所有PY在运行时,都会先找到TEST.py中的handler函数作初始工作。
##严重注意:如果客户端是使用POST方法传送资料,则必须在handler中调用read()方法,否则POST信息将被APACHE截取。
    PythonHandler mod_python.publisher
##使用publisher后,客户端就可调用某一.py中的某一函数,如Http://localhost/test/test1.py/hello?word='hi'
    PythonDebug On ##将出录信息打印到APACHE的日志中
</Directory>

附注:如果要在 apache + mod_python 中只运行 .pyo/.pyc 文件则需要将配置修改如下:
      入口(如本例的test222.py)需要保留 .py脚本文件,否则将会找不到入口,
      其他文件可以用编译后的.pyc/.pyo文件

PythonOptimize On //这是引入python 的优化机制,并没有影响
<Directory "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs/test1">
    AllowOverride All
    PythonHandler test
    PythonAuthzHandler test::handler  //增加这句test::handler其中的handler是入口函数,
                                                                  //中间的“::”按文档说的:能提高效率
                                                                  //如果有包或者是文件夹的情况可以写成 test1.test::handler
    AddHandler mod_python .pyc
    AddHandler mod_python .pyo
    AddHandler mod_python .py
    PythonHandler mod_python.publisher
    PythonDebug On
</Directory>
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:88115次
    • 积分:1202
    • 等级:
    • 排名:千里之外
    • 原创:31篇
    • 转载:2篇
    • 译文:0篇
    • 评论:13条
    文章分类
    最新评论