II. Apache 特有函数

简介

本类函数仅在 PHP 作为 Apache 的模块运行时可用。

注意: 自 PHP 4.3.2 起,Apache 2 SAPI 中不再像和 Apache 1 中相反那样隐含设定 PATH_TRANSLATED,它将被设为 SCRIPT_FILENAME 服务器环境变量而不是由 Apache 产生。此修改是为了符合 CGI 规范,PATH_TRANSLATED 应仅在定义了 PATH_INFO 之时才有效。

Apache 2 用户可以在 httpd.conf 中使用 AcceptPathInfo = On 来定义 PATH_INFO

安装

PHP 在 Apache 中的安装见安装一章。

运行时配置

Apache 的 PHP 模块的行为受 php.ini 的设置影响。在 php.ini 中的设置可以被服务器配置文件或本地的 .htaccess 文件中的 php_flag 设置所覆盖。

例 1. 用 .htaccess 禁用一个目录的 PHP 解析

php_flag engine off

表 1. Apache 配置选项

名称默认值可修改范围更新记录
engine"1"PHP_INI_ALL自 PHP 4.0.5 起可用
child_terminate"0"PHP_INI_ALL自 PHP 4.0.5 起可用
last_modified"0"PHP_INI_ALL自 PHP 4.0.5 起可用
xbithack"0"PHP_INI_ALL自 PHP 4.0.5 起可用
有关 PHP_INI_* 常量进一步的细节与定义参见附录 H

以下是配置选项的简要解释。

engine boolean

打开或关闭 PHP 解析。本指令仅在使用 PHP 的 Apache 模块版本时才有用。可以基于目录或者虚拟主机来打开或者关闭 PHP。将 engine off 放到 httpd.conf 文件中适当的位置就可以激活或禁用 PHP。

child_terminate boolean

指定 PHP 脚本在请求结束后是否可以要求终止子进程。参见 apache_child_terminate()

last_modified boolean

在本次请求中发送一个头信息 Last-Modified:,显示 PHP 脚本最后被修改的日期。

xbithack boolean

不管文件结尾是什么,将文件作为 PHP 以可执行位组来解析。

资源类型

本扩展模块未定义任何资源类型。

预定义常量

本扩展模块未定义任何常量。

目录
apache_child_terminate -- 在本次请求结束后终止 apache 进程
apache_get_modules -- Get a list of loaded Apache modules
apache_get_version -- Fetch Apache version
apache_getenv -- Get an Apache subprocess_env variable
apache_lookup_uri -- 对指定的 URI 执行部分请求并返回所有有关信息
apache_note -- 取得或设置 apache 请求记录
apache_request_headers -- Fetch all HTTP request headers
apache_reset_timeout -- Reset the Apache write timer
apache_response_headers -- Fetch all HTTP response headers
apache_setenv -- Set an Apache subprocess_env variable
ascii2ebcdic -- Translate string from ASCII to EBCDIC
ebcdic2ascii -- Translate string from EBCDIC to ASCII
getallheaders -- Fetch all HTTP request headers
virtual -- Perform an Apache sub-request