Atitit.python web环境的配置 attilax 总结

1. 下载modpython/1

1.1. 安装python2.5.11

1.2. 安装modpython1

2. 设置py文件的url请求器2

3. www/py/t.py2

4. 访问url  http://localhost/py/t.py/handler2

5. 高级知识2

5.1. 原生(native)mod_python处理器 2

5.2. 那么mod_python到底做了些什么呢?3

6. 参考5

1. 下载modpython/

目前只有mod_python-3.3.1.win32-py2.5-Apache2.2是编译的。。

2.7的需要自己编译。。。

http://archive.apache.org/dist/httpd/modpython/

http://archive.apache.org/dist/httpd/modpython/
去找,只有python2.5是编译好的,其它的需要编译,不过其实可以把文件中的python25.dll改为你想要的python27.dll,因为这几个版本基本上是兼容的。

1.1. 安装python2.5.1

1.2. 安装modpython

D:\wamp\bin\apache\Apache2.2.21\modules\mod_python.so

修改http.conf

增加LoadModule python_module modules/mod_python.so

2. 设置py文件的url请求器

可以设在在htt.p。Confi文件里面

也可以设置在.htaccess 文件里面

AddHandler mod_python .py

SetHandler mod_python

PythonHandler mod_python.publisher

#mod_python.publisher

PythonDebug On

3. www/py/t.py

from mod_python import apache

def handler(req):

req.content_type = 'text/plain'

req.write("Hello World!")

return apache.OK

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

4. 访问url  http://localhost/py/t.py/handler

注意url要访问到模块的方法中。

5. 高级知识

5.1. 原生(native)mod_python处理器

<Directory /mywebdir>

AddHandler mod_python .py

PythonHandler myscript

PythonDebug On

</Directory>

from mod_python import apache

def handler(req):

req.content_type = 'text/plain'

req.write("Hello World!")

return apache.OK

访问url是xxxx.py模块为止

5.2. 那么mod_python到底做了些什么呢?

假设我们有下面的配置文件:

<Directory /mywebdir>

AddHandler mod_python .py

PythonHandler myscript

PythonDebug On

</Directory>

注意: /mywebdir 是一个物理绝对路径。 还有一个python程序‘/mywedir/myscript.py’如下:

from mod_python import apache

def handler(req):

req.content_type = "text/plain"

req.write("Hello World!")

return apache.OK

解释一下这个程序:

addHandler 指示告诉 apache, 所有在mywebdir目录或者是它的子目录下的所有.py文件,有关于这些文件的任何请求都用mod_python 来处理, pythonHandler myscript 指示告诉 mod_python 用 myscript 执行默认的处理器. “pythonDebug On” 指示告诉mod_python如果发生错误,就把错误信息打印到客户端 (相对于写入日志文件),在开发的时候这个选项非常有用。

当一个请求发出时,apache通过调用mod_python中的处理器分步处理请求,Mod_python首先检查请求的那个处理器是否在配置文件中指定了(记住,它的角色是发报机dispatcher),在我们的例子中,mod_python除了调用默认的那个处理器外不会调用其他的任何处理器,然后,mod_python会发现"pythonHandler myscript"指示,并按照下面的步骤来进行:

1.如果以前没有做过,那么就把pythonHandler指定的那个目录加到sys.path中。

2.尝试引入myscript的模块(注意,如果myscript在pythonHandler指定那个目录的子目录中的话,引入会出错,因为子目录并没有加到sys.path中,解决这种情况的方法是使用包)例如:”pythonHandler subdir.myscript”

3.在myscript中寻找名字叫handler的方法。

4.调用这个方法,并把request对象传递给它。

5.现在让我们深入这段脚本看一下:

from mod_python import apache

这个引入语句提供给我们一个访问apache的接口。除了极少数情况外,每一个mod_python程序一般都会有这一行。

def handler(req):

这是处理器方法的声明,它之所以叫"handler"是因为mod_python在指示中使用这个名字,转换它为小写并移除"python",所以"pythonHandler"变成了"handler",你可以给它起别的名字,并且通过在指示中使用"::"明确的指定它.举个例子,如果处理器方法叫"spam",那么指示就应该是”pythonHandler myscript::spam”。

注意处理器必须有一个参数

6. 参考

Mod_Python中文文档.htm

apache(wamp) 添加python支持 - EI__Nino的专栏 - 博客频道 - CSDN.NET.htm

在Windows平台的Apache中配置Python_编程开发_软件教程_脚本之家.htm

Atitit.python web环境的配置 attilax 总结相关推荐

  1. python web环境傻瓜搭建_Python 环境搭建以及神器推荐,果断收藏!

    原标题:Python 环境搭建以及神器推荐,果断收藏! 导读:今天给大家讲一下如何搭建一个舒适的 Python 环境,包括本地环境和远程调试环境,然后再附送给大家两套好用的 Python Web 框架 ...

  2. Atitit。Web server Jetty9 使用 attilax 总结

    Atitit.Web server Jetty9 使用 attilax 总结 1.1. 静态文件的资源 1 1.2. Servlet使用 1 1.3. code 1 1.1. 静态文件的资源 WebA ...

  3. Mac m1 python软件环境安装配置

    Mac m1 python软件环境安装配置 一.安装miniconda 二.安装chrome浏览器 三.安装git 四.安装homebrew 五.安装vscode 选择python解释器 vscode ...

  4. eclipse配置python开发环境_Eclipse配置Python的环境

    我们都知道Eclipse 是一个开放源代码的.基于Java的可扩展开发平台,而且Eclipse作为著名的跨平台的自由集成开发环境(IDE),支持多种开发语言,虽然目前的主流还是Java,但是Pytho ...

  5. python的环境变量配置

    一般会自己在安装时配置环境变量,但是也有小失误忘了打勾勾, 这时我们则需要自己配置环境变量.Python的环境变量配置很简单. 1.1.Windows配置环境变量 右击点击"我的电脑&quo ...

  6. Python相关环境变量配置和模拟手机app登录

    [java环境变量配置] 接着,打开系统->高级系统设置->环境变量.新建一个JAVA_HOME C:\Program Files\Java\jdk1.8.0_201(这里是你的安装路径, ...

  7. linux下python web环境一锅烩

    一.创建新linux用户 1.创建用户 命令:sudo useradd -m 用户名 sudo --- 给用户增加sudo权限 -m --- 自动建立用户的登入目录 2.设置密码 命令:sudo pa ...

  8. 阿里云服务器搭建python web环境_《Python入门》Linux 下 Python Web开发环境搭建笔记-阿里云开发者社区...

    之前写过 Windows 7下Python Web开发环境搭建笔记,今天写一下在Linux系统下搭建Python Web的开发测试环境. 我使用的系统是:ubuntu 14.04 server,根据个 ...

  9. windows7下载python教程-Windows 7下Python Web环境搭建图文教程

    最近想尝试一下在IBM Bluemix上使用Python语言创建Web应用程序,所以需要在本地搭建Python Web的开发测试环境. 关于Python的版本 进入Python的网站,鼠标移到导航条上 ...

  10. pythonweb搭建教程_基于Centos搭建Python Web 环境搭建教程

    CentOS 7.2 64 位操作系统 安装 setuptools 工具 安装 因为之后我们需要安装 Django ,而 Django 需要用这个工具,所以我们需要先安装 setuptools 工具. ...

最新文章

  1. 【Flask】视图高级
  2. nRF51800 蓝牙学习 进程记录 2:关于二维数组 执念执战
  3. 你对象怎么找的?日本网友:国家用AI给分配的
  4. 数独高阶技巧入门之四:简单异数链
  5. Git2.29让Git成功“牵 手”Gerrit
  6. 基于电子邮件的InfoPath表单发布的注意点 [Infopath 2007]
  7. LeetCode 404左叶子之和-简单
  8. 64位linux并行计算大气模型效率优化研究,64位Linux并行计算大气模型效率优化研究...
  9. MarshalHelper
  10. 会移动的文字(Marquee)
  11. 自省的力量-我看《走出软件作坊》
  12. 双非硕士阿里大数据开发面经(已拿offer)
  13. 如何通过字典表来获取下拉数据的实现
  14. java创建线程的三种方式及其对照
  15. 计算机VB中清除按钮,计算机vb程序设计时计算器清除的代码怎么写
  16. 张小龙《微信背后的产品观》
  17. python绘图代码大全_python绘图代码总结
  18. python2在线编译器_Skulpt搭建Python在线编译器(二):界面优化
  19. linux gianfar 网口驱动源码,基于MPC8313ERDB平台的Marvell88E1111型网卡驱动移植(uboot+kernel)...
  20. 迷你世界安卓版mod

热门文章

  1. mysql 并发_MySQL多版本并发控制机制(MVCC)源码浅析
  2. 支持Linux分区移动的,Linux怎样支持2T以上大硬盘分区
  3. mysql auto_increment建表_如何在MySQL中已创建的表中插入AUTO_INCREMENT
  4. java socket 连接原理_Java socket通信基本原理介绍
  5. JMeter数据库请求配置及示例
  6. Oracle_为分区表添加新分区
  7. 中国科学院慈松:云计算如何可持续发展
  8. 中国电信联合多方加速推进OpenStack技术产业化 —— OSCAR即将发布“OpenStack技术应用场景”技术规范...
  9. Hadoop2源码分析-YARN 的服务库和事件库
  10. 实验记录一 初步接触cortex-M3