当前位置:多学网学习教育电脑学习编程入门PHP教程Apache处理器的使用

Apache处理器的使用

[08-23 22:09:14]   来源:http://www.duoxue8.com  PHP教程   阅读:587
Apache处理器的使用,标签:PHP技巧,php培训,php学习,php安装,http://www.duoxue8.com

“处理器”是当一个文件被调用时,Apache所执行操作的内部表现。 文件一般都有基于其文件类型的隐含的处理器。 通常,文件都只是被服务器作简单的提交,只有某些文件类型会被特殊地“处理”。

Apache 1.1显式地增加了使用处理器的能力。 处理器可以被指定给文件名后缀或位置,而不仅是文件类型, 其优越性不仅在于它是一个优秀的方案, 还在于它允许一个文件同时与一种类型一个处理器相关联。 (参见Files with Multiple Extensions.)

处理器可以被编译进入服务器,也可以包含于模块中,还可以用Action指令增加。标准发行版中内建的处理器如下:

  • default-handler: 用default_handler()发送文件, 这是处理静态内容的默认的处理器(core)。 
  • send-as-is: 按原样带HTTP头发送文件。(mod_asis
  • cgi-script: 将文件视为CGI脚本。(mod_cgi
  • imap-file: 将文件作为imagemap规则文件解析。(mod_imap
  • server-info: 获取服务器配置信息。(mod_info
  • server-status: 获取服务器状态的报告。(mod_status
  • type-map: 将文件作为类型表文件解析以实现内容协商。(mod_negotiation)

举例

用CGI脚本修改静态的内容

以下指令,将使对带有html后缀的文件的请求, 调用CGI脚本footer.pl

Action add-footer /cgi-bin/footer.pl
AddHandler add-footer .html 

然后,由CGI脚本负责发送(由环境变量PATH_TRANSLATED指向的)原始请求文档, 并按需要进行修改或增加。

带HTTP头的文件

以下指令使send-as-is处理器有效,它是用来处理本身拥有HTTP头的文件的, 如此,所有位于/web/htdocs/asis/目录中的文件, 无论其后缀是什么,都由send-as-is进行处理。

<Directory /web/htdocs/asis>
SetHandler send-as-is
</Directory> 

程序员注意事项

为了实现处理器功能,Apache API 里面增加了一些内容,可能你会用到。尤其是,request_rec 结构中增加了一个记录:

char *handler 

如果你的模块需要用处理器,只须在对请求执行invoke_handler之前, 设置r->handler为该处理器的名称,即可。 处理器的实现和以前一样,只是使用了处理器名称而不是内容类型。 处理器的名称可以有'-',但不能有'/',以免于介质类型名称冲突。




Apache处理器的使用 结束。
Tag:PHP教程PHP技巧,php培训,php学习,php安装电脑学习 - 编程入门 - PHP教程