php.ini 核心配置选项说明
2011-03-04 17:48
471 查看
http://bbs.php.cn/php/ini.core.html
配置选项。扩展的配置选项在各个扩展的文档页面分别被描述。有关 session 的选项可以在
sessions 页面找到。
以下是配置选项的简要解释。
short_open_tag
boolean[/b]
决定是否允许使用 PHP 代码开始标志的缩写形式(<?
?>)。如果要和 XML 结合使用
PHP,可以禁用此选项以便于嵌入使用
<?xml ?>。否则还可以通过
PHP 来输出,例如:<?php echo '<?xml
version="1.0"'; ?>。如果禁用了,必须使用
PHP 代码开始标志的完整形式(<?php
?>)。
注:
本指令也会影响到缩写形式
<?=,它和
<? echo 等价。使用此缩写需要
short_open_tag
的值为 On。
asp_tags
boolean[/b]
除了通常的
<?php ?>
标志之外还允许使用
ASP 风格的标志 <% %>。这也包括了输出变量值的缩写
<%= $value %>。更多信息见从 HTML 中分离一节。
注:
ASP 风格标志的支持是 3.0.4 版新加的。
precision
integer[/b]
浮点数中显示有效数字的位数。
y2k_compliance
boolean[/b]
强制 2000 年兼容(在不兼容的浏览器中会出问题)。
allow_call_time_pass_reference
boolean[/b]
是否启用在函数调用时强制参数被按照引用传递。此方法已不被赞成并在 PHP/Zend
未来的版本中很可能不再支持。鼓励使用的方法是在函数定义中指定哪些参数应该用引用传递。鼓励大家尝试关闭此选项并确保脚本能够正常运行,以确保该脚本也
能在未来的版本中运行(每次使用此特性都会收到一条警告,参数会被按值传递而不是按照引用传递)。
在函数调用时通过引用传递参数是不推荐的,因为它影响到了代码的整洁。如果函数的参数没有声明作为引用传递,函数可以通过未写入文档的方法修改其参数。要避免其副作用,最好仅在函数声明时指定那个参数需要通过引用传递。
参见引用的解释。
expose_php
boolean[/b]
决定是否暴露 PHP 被安装在服务器上(例如在 Web
服务器的信息头中加上其签名)。没有任何安全上的威胁,只是让客户端能够知道是否在服务器中安装了
PHP。
zend.ze1_compatibility_mode
boolean[/b]
启用 Zend 引擎 1 (PHP 4) 兼容模式。这影响到了对象的复制、构造及比较。
参见从 PHP 4 移植到 PHP 5。
以下是配置选项的简要解释。
memory_limit
integer[/b]
本指令设定了一个脚本所能够申请到的最大内存字节数。这有助于防止写得不好的脚本消耗光服务器上的可用内存。要使用此指令必须在编译的时候激活。因此
configure
一行中应该包括:--enable-memory-limit。如果不需要任何内存上的限制,必须将其设为
-1。
自 4.3.2 起,当激活了 memory_limit,PHP 函数
memory_get_usage()[/b] 便可以使用了。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
See also: max_execution_time.
以下是配置选项的简要解释。
track_vars
boolean[/b]
如果激活,则环境变量,GET,POST,Cookie 和 Server
变量都能够分别在全局关联数组中找到:$_ENV,$_GET,$_POST,$_COOKIE 和
$_SERVER。
注意自 PHP 4.0.3 起,track_vars 总是打开的。
arg_separator.output
string[/b]
PHP 所产生的 URL 中来分隔参数的分隔符。
arg_separator.input
string[/b]
PHP 用来将 URL 解析为变量的分隔符列表。
注:
本指令中的每个字符都会被当成分隔符!
variables_order
string[/b]
设定 EGPCS(Environment,GET,POST,Cookie,Server)变量解析的顺序。默认设定为“EGPCS”。举例说,将其设为“GP”,会导致
PHP 完全忽略环境变量,cookies 和 server 变量,并用 GET
方法的变量覆盖 POST 方法的同名变量。
参见 register_globals。
auto_globals_jit
boolean[/b]
启用后,SERVER 和 ENV 变量在他们第一次使用后 (Just In Time) 便被创建,而不是等到脚本开始运行时。如果这些变量没有在脚本总使用,启用这个变量会提高服务器性能。
要使此选项有效,PHP 配置选项
register_globals,
register_long_arrays,
和 register_argc_argv
必须禁用。
register_globals
boolean[/b]
决定是否将
EGPCS(Environment,GET,POST,Cookie,Server)变量注册为全局变量。
PHP 4.2.0
开始,本选项默认为
off[/i]。
相关信息请阅读安全一章中的使用 register_globals。
请注意
register_globals
不能在运行时设定(ini_set()[/b]),尽管如以上说明在主机允许时可以用
.htaccess。一个
.htaccess 项目的例子:php_flag register_globals off。
register_argc_argv
boolean[/b]
决定 PHP 是否定义 argv & argc 变量(可能包含有 GET 信息)。
参见命令行方式。此外,本选项自
PHP 4.0.0 起可用,在此之前总是“On”。
register_long_arrays
boolean[/b]
设定 PHP 是否注册已过时的 $HTTP_*_VARS 之类的预定义变量。如果为
On(默认值),则类似 $HTTP_GET_VARS
的 PHP 变量会被注册。如果不使用,为性能考虑建议关闭此选项,而使用超全局数组例如
$_GET 替代之。
本指令自 PHP 5.0.0 起可用。
post_max_size
integer[/b]
设定 POST 数据所允许的最大大小。此设定也影响到文件上传。要上传大文件,该值必须大于
upload_max_filesize。
如果配置脚本中激活了内存限制,memory_limit
也会影响文件上传。通常说,memory_limit
应该比
post_max_size 要大。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
如果 POST 数据尺寸大于 post_max_size
$_POST 和 $_FILES
superglobals
便会为空。这可以以多种方式证明,例如,传递
$_GET 变量到脚本以处理数据,
也就是 <form action="edit.php?processed=1">,
然后查看 $_GET['processed'] 是否被设置。
gpc_order
string[/b]
设定 GET/POST/COOKIE 变量解析的顺序,默认为“GPC”。举例说,将其设为“GP”,会导致
PHP 完全忽略 cookie 变量,并用 GET
方法的变量覆盖 POST 方法的同名变量。
auto_prepend_file
string[/b]
指定在主文件之前自动解析的文件名。该文件就像调用了
include()[/b] 函数一样被包含进来,因此会使用
include_path。
特殊值 none
禁止了自动前缀。
auto_append_file
string[/b]
指定在主文件之后自动解析的文件名。该文件就像调用了
include()[/b] 函数一样被包含进来,因此会使用
include_path。
特殊值 none
禁止了自动后缀。
default_mimetype
string[/b]
default_charset
string[/b]
自 4.0b4 起,PHP 总是默认在 HTTP 信息头
Content-type: 中输出字符编码。要禁止发送字符集,将本选项设为空即可。
always_populate_raw_post_data
boolean[/b]
总是产生 $HTTP_RAW_POST_DATA 变量包含有原始的
POST 数据。否则,此变量仅在碰到未识别 MIME 类型的数据时产生。不过,访问原始
POST 数据的更好方法是 php://input。$HTTP_RAW_POST_DATA
对于 enctype="multipart/form-data" 表单数据不可用。
allow_webdav_methods
boolean[/b]
允许在 PHP 脚本中处理
WebDAV 的 HTTP 请求(例如
PROPFIND,PROPPATCH,MOVE,COPY 等)。此选项在 PHP 4.3.2 以后便不存在了。如果要取得这些请求的
POST 数据,也要设定
always_populate_raw_post_data。
参见
magic_quotes_gpc,magic-quotes-runtime 和
magic_quotes_sybase。
以下是配置选项的简要解释。
include_path
string[/b]
指定一组目录用于
require()[/b],include()[/b] 和
fopen_with_path()[/b]
函数来寻找文件。格式和系统的
PATH
环境变量类似:一组目录的列表,在 UNIX 下用冒号分隔,在
Windows 下用分号分隔。
在包含路径中使用 .
可以允许相对路径,它代表当前目录。
doc_root
string[/b]
PHP 在服务器上的根目录。仅在非空时使用。如果
PHP 被配置为安全模式,则此目录之外的文件一概不被解析。如果
PHP 编译时没有指定 FORCE_REDIRECT,并且在任何 web
服务器(除了 IIS)中以 CGI
方式运行 PHP,则应该设定 doc_root。替代方案是使用下面的
cgi.force_redirect
配置选项。
user_dir
string[/b]
在用户目录之下使用 PHP
文件的基本目录名,例如
public_html。
extension_dir
string[/b]
PHP 用来寻找动态连接扩展库的目录。参见
enable_dl 和
dl()[/b]。
extension
string[/b]
当 PHP 启动时所加载的动态连接扩展库。
cgi.fix_pathinfo
boolean[/b]
对 CGI 提供了真正的[/i] PATH_INFO/PATH_TRANSLATED
支持。以前 PHP 的行为是将 PATH_TRANSLATED 设为
SCRIPT_FILENAME,而不管 PATH_INFO 是什么。有关 PATH_INFO
的更多信息见 cgi 规格。将此值设为 1 将使 PHP CGI
修正其路径以遵守规格。设为 0 将使 PHP
的行为和从前一样。默认为零。用户应该修正其脚本使用 SCRIPT_FILENAME
而不是 PATH_TRANSLATED。
cgi.force_redirect
boolean[/b]
在大多数 web 服务器中以 CGI 方式运行 PHP
时很有必要用 cgi.force_redirect 提供安全。PHP
默认其为 On。可以将其关闭,但风险自担[/i]。
注:
Windows 用户:可以安全地在 IIS 之下将其关闭,事实上必须这么做。要在
OmniHTTPD 或 Xitami 之下使用也必须将其关闭。
cgi.redirect_status_env
string[/b]
如果打开了 cgi.force_redirect,并且不是在
Apache 或 Netscape(iPlanet)web
服务器之下运行,可能需要设定一个环境变量名,PHP
将去寻找它来知道可以继续执行下去。
注:
设定此变量可能会导致安全问题,首先要知道自己在做什么。
fastcgi.impersonate
string[/b]
IIS(在基于 WINNT 的操作系统上)中的 FastCGI
支持模仿客户端安全令牌的能力。这使得 IIS
能够定义运行时所基于的请求的安全上下文。Apache
中的 mod_fastcgi 不支持此特性(03/17/2002)。如果在
IIS 中运行则设为 1。默认为 0。
cgi.rfc2616_headers
int[/b]
指定 PHP 在发送 HTTP 响应代码时使用何种报头。如果设定为 0,PHP
发送一个 Status: 报头,Apache 和其它 web server 都支持。如果此选项设定为 1,PHP
将发送 RFC 2616
兼容的报头。除非你知道自己在做什么,否则保留其值为 0。
以下是配置选项的简要解释。
file_uploads
boolean[/b]
是否允许 HTTP
文件上传。参见
upload_max_filesize,upload_tmp_dir 和
post_max_size 指令。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
upload_tmp_dir
string[/b]
文件上传时存放文件的临时目录。必须是
PHP 进程所有者用户可写的目录。如果未指定则
PHP 使用系统默认值。
upload_max_filesize
integer[/b]
所上传的文件的最大大小。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
以下是配置选项的简要解释。
sql.safe_mode
boolean[/b]
debugger.host
string[/b]
调试器所使用的主机的 DNS 名或 IP 地址。
debugger.port
string[/b]
调试器所用的端口号。
debugger.enabled
boolean[/b]
是否启用调试器。
php.ini 核心配置选项说明
该列表只包含核心的 php.ini配置选项。扩展的配置选项在各个扩展的文档页面分别被描述。有关 session 的选项可以在
sessions 页面找到。
Httpd 选项
表格 G-3. Httpd 选项名称 | 默认值 | 可修改范围 | 更新记录 |
---|---|---|---|
async_send | "0" | PHP_INI_ALL |
语言选项
表格 G-4. 语言和杂类配置选项名称 | 默认值 | 可修改范围 | 更新记录 |
---|---|---|---|
short_open_tag | "1" | PHP_INI_PERDIR | 在 PHP <= 4.0.0 时是 PHP_INI_ALL。 |
asp_tags | "0" | PHP_INI_PERDIR | 在 PHP <= 4.0.0 时是 PHP_INI_ALL。 |
precision | "14" | PHP_INI_ALL | |
y2k_compliance | "1" | PHP_INI_ALL | |
allow_call_time_pass_reference | "1" | PHP_INI_PERDIR | 在 PHP <= 4.0.0 时是 PHP_INI_ALL。 |
expose_php | "1" | 仅可在 php.ini 中配置。 | |
zend.ze1_compatibility_mode | "0" | PHP_INI_ALL | 从 PHP 5.0.0 起可用。 |
short_open_tag
boolean[/b]
决定是否允许使用 PHP 代码开始标志的缩写形式(<?
?>)。如果要和 XML 结合使用
PHP,可以禁用此选项以便于嵌入使用
<?xml ?>。否则还可以通过
PHP 来输出,例如:<?php echo '<?xml
version="1.0"'; ?>。如果禁用了,必须使用
PHP 代码开始标志的完整形式(<?php
?>)。
注:
本指令也会影响到缩写形式
<?=,它和
<? echo 等价。使用此缩写需要
short_open_tag
的值为 On。
asp_tags
boolean[/b]
除了通常的
<?php ?>
标志之外还允许使用
ASP 风格的标志 <% %>。这也包括了输出变量值的缩写
<%= $value %>。更多信息见从 HTML 中分离一节。
注:
ASP 风格标志的支持是 3.0.4 版新加的。
precision
integer[/b]
浮点数中显示有效数字的位数。
y2k_compliance
boolean[/b]
强制 2000 年兼容(在不兼容的浏览器中会出问题)。
allow_call_time_pass_reference
boolean[/b]
是否启用在函数调用时强制参数被按照引用传递。此方法已不被赞成并在 PHP/Zend
未来的版本中很可能不再支持。鼓励使用的方法是在函数定义中指定哪些参数应该用引用传递。鼓励大家尝试关闭此选项并确保脚本能够正常运行,以确保该脚本也
能在未来的版本中运行(每次使用此特性都会收到一条警告,参数会被按值传递而不是按照引用传递)。
在函数调用时通过引用传递参数是不推荐的,因为它影响到了代码的整洁。如果函数的参数没有声明作为引用传递,函数可以通过未写入文档的方法修改其参数。要避免其副作用,最好仅在函数声明时指定那个参数需要通过引用传递。
参见引用的解释。
expose_php
boolean[/b]
决定是否暴露 PHP 被安装在服务器上(例如在 Web
服务器的信息头中加上其签名)。没有任何安全上的威胁,只是让客户端能够知道是否在服务器中安装了
PHP。
zend.ze1_compatibility_mode
boolean[/b]
启用 Zend 引擎 1 (PHP 4) 兼容模式。这影响到了对象的复制、构造及比较。
参见从 PHP 4 移植到 PHP 5。
资源限制
表格 G-5. 资源限制名称 | 默认值 | 可修改范围 | 更新记录 |
---|---|---|---|
memory_limit | "8M" | PHP_INI_ALL |
memory_limit
integer[/b]
本指令设定了一个脚本所能够申请到的最大内存字节数。这有助于防止写得不好的脚本消耗光服务器上的可用内存。要使用此指令必须在编译的时候激活。因此
configure
一行中应该包括:--enable-memory-limit。如果不需要任何内存上的限制,必须将其设为
-1。
自 4.3.2 起,当激活了 memory_limit,PHP 函数
memory_get_usage()[/b] 便可以使用了。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
See also: max_execution_time.
数据处理
表格 G-6. 数据处理配置选项名称 | 默认值 | 可修改范围 | 更新记录 |
---|---|---|---|
track_vars | "On" | PHP_INI_?? | |
arg_separator.output | "&" | PHP_INI_ALL | 从 PHP 4.0.5 起可用。 |
arg_separator.input | "&" | PHP_INI_PERDIR | 从 PHP 4.0.5 起可用。 |
variables_order | "EGPCS" | PHP_INI_ALL | |
auto_globals_jit | "1" | PHP_INI_PERDIR | 从 PHP 5.0.0 起可用。 |
register_globals | "0" | PHP_INI_PERDIR | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。 |
register_argc_argv | "1" | PHP_INI_PERDIR | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。 |
register_long_arrays | "1" | PHP_INI_PERDIR | 从 PHP 5.0.0 起可用。 |
post_max_size | "8M" | PHP_INI_PERDIR | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。从 PHP 4.0.3 起可用。 |
gpc_order | "GPC" | PHP_INI_ALL | |
auto_prepend_file | NULL | PHP_INI_PERDIR | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。 |
auto_append_file | NULL | PHP_INI_PERDIR | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。 |
default_mimetype | "text/html" | PHP_INI_ALL | |
default_charset | "" | PHP_INI_ALL | |
always_populate_raw_post_data | "0" | PHP_INI_PERDIR | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。从 PHP 4.1.0 起可用。 |
allow_webdav_methods | "0" | PHP_INI_PERDIR |
track_vars
boolean[/b]
如果激活,则环境变量,GET,POST,Cookie 和 Server
变量都能够分别在全局关联数组中找到:$_ENV,$_GET,$_POST,$_COOKIE 和
$_SERVER。
注意自 PHP 4.0.3 起,track_vars 总是打开的。
arg_separator.output
string[/b]
PHP 所产生的 URL 中来分隔参数的分隔符。
arg_separator.input
string[/b]
PHP 用来将 URL 解析为变量的分隔符列表。
注:
本指令中的每个字符都会被当成分隔符!
variables_order
string[/b]
设定 EGPCS(Environment,GET,POST,Cookie,Server)变量解析的顺序。默认设定为“EGPCS”。举例说,将其设为“GP”,会导致
PHP 完全忽略环境变量,cookies 和 server 变量,并用 GET
方法的变量覆盖 POST 方法的同名变量。
参见 register_globals。
auto_globals_jit
boolean[/b]
启用后,SERVER 和 ENV 变量在他们第一次使用后 (Just In Time) 便被创建,而不是等到脚本开始运行时。如果这些变量没有在脚本总使用,启用这个变量会提高服务器性能。
要使此选项有效,PHP 配置选项
register_globals,
register_long_arrays,
和 register_argc_argv
必须禁用。
register_globals
boolean[/b]
决定是否将
EGPCS(Environment,GET,POST,Cookie,Server)变量注册为全局变量。
PHP 4.2.0
开始,本选项默认为
off[/i]。
相关信息请阅读安全一章中的使用 register_globals。
请注意
register_globals
不能在运行时设定(ini_set()[/b]),尽管如以上说明在主机允许时可以用
.htaccess。一个
.htaccess 项目的例子:php_flag register_globals off。
register_argc_argv
boolean[/b]
决定 PHP 是否定义 argv & argc 变量(可能包含有 GET 信息)。
参见命令行方式。此外,本选项自
PHP 4.0.0 起可用,在此之前总是“On”。
register_long_arrays
boolean[/b]
设定 PHP 是否注册已过时的 $HTTP_*_VARS 之类的预定义变量。如果为
On(默认值),则类似 $HTTP_GET_VARS
的 PHP 变量会被注册。如果不使用,为性能考虑建议关闭此选项,而使用超全局数组例如
$_GET 替代之。
本指令自 PHP 5.0.0 起可用。
post_max_size
integer[/b]
设定 POST 数据所允许的最大大小。此设定也影响到文件上传。要上传大文件,该值必须大于
upload_max_filesize。
如果配置脚本中激活了内存限制,memory_limit
也会影响文件上传。通常说,memory_limit
应该比
post_max_size 要大。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
如果 POST 数据尺寸大于 post_max_size
$_POST 和 $_FILES
superglobals
便会为空。这可以以多种方式证明,例如,传递
$_GET 变量到脚本以处理数据,
也就是 <form action="edit.php?processed=1">,
然后查看 $_GET['processed'] 是否被设置。
gpc_order
string[/b]
设定 GET/POST/COOKIE 变量解析的顺序,默认为“GPC”。举例说,将其设为“GP”,会导致
PHP 完全忽略 cookie 变量,并用 GET
方法的变量覆盖 POST 方法的同名变量。
auto_prepend_file
string[/b]
指定在主文件之前自动解析的文件名。该文件就像调用了
include()[/b] 函数一样被包含进来,因此会使用
include_path。
特殊值 none
禁止了自动前缀。
auto_append_file
string[/b]
指定在主文件之后自动解析的文件名。该文件就像调用了
include()[/b] 函数一样被包含进来,因此会使用
include_path。
特殊值 none
禁止了自动后缀。
default_mimetype
string[/b]
default_charset
string[/b]
自 4.0b4 起,PHP 总是默认在 HTTP 信息头
Content-type: 中输出字符编码。要禁止发送字符集,将本选项设为空即可。
always_populate_raw_post_data
boolean[/b]
总是产生 $HTTP_RAW_POST_DATA 变量包含有原始的
POST 数据。否则,此变量仅在碰到未识别 MIME 类型的数据时产生。不过,访问原始
POST 数据的更好方法是 php://input。$HTTP_RAW_POST_DATA
对于 enctype="multipart/form-data" 表单数据不可用。
allow_webdav_methods
boolean[/b]
允许在 PHP 脚本中处理
WebDAV 的 HTTP 请求(例如
PROPFIND,PROPPATCH,MOVE,COPY 等)。此选项在 PHP 4.3.2 以后便不存在了。如果要取得这些请求的
POST 数据,也要设定
always_populate_raw_post_data。
参见
magic_quotes_gpc,magic-quotes-runtime 和
magic_quotes_sybase。
路径和目录
表格 G-7. 路径和目录配置选项名称 | 默认值 | 可修改范围 | 更新记录 |
---|---|---|---|
include_path | ".;/path/to/php/pear" | PHP_INI_ALL | |
doc_root | NULL | PHP_INI_SYSTEM | |
user_dir | NULL | PHP_INI_SYSTEM | |
extension_dir | "/path/to/php" | PHP_INI_SYSTEM | |
cgi.fix_pathinfo | "1" | PHP_INI_ALL | |
cgi.force_redirect | "1" | PHP_INI_ALL | |
cgi.redirect_status_env | NULL | PHP_INI_ALL | |
fastcgi.impersonate | "0" | PHP_INI_ALL | |
cgi.rfc2616_headers | "0" | PHP_INI_ALL |
include_path
string[/b]
指定一组目录用于
require()[/b],include()[/b] 和
fopen_with_path()[/b]
函数来寻找文件。格式和系统的
PATH
环境变量类似:一组目录的列表,在 UNIX 下用冒号分隔,在
Windows 下用分号分隔。
例子 G-1. Unix include_path
|
例子 G-2. Windows include_path
|
可以允许相对路径,它代表当前目录。
doc_root
string[/b]
PHP 在服务器上的根目录。仅在非空时使用。如果
PHP 被配置为安全模式,则此目录之外的文件一概不被解析。如果
PHP 编译时没有指定 FORCE_REDIRECT,并且在任何 web
服务器(除了 IIS)中以 CGI
方式运行 PHP,则应该设定 doc_root。替代方案是使用下面的
cgi.force_redirect
配置选项。
user_dir
string[/b]
在用户目录之下使用 PHP
文件的基本目录名,例如
public_html。
extension_dir
string[/b]
PHP 用来寻找动态连接扩展库的目录。参见
enable_dl 和
dl()[/b]。
extension
string[/b]
当 PHP 启动时所加载的动态连接扩展库。
cgi.fix_pathinfo
boolean[/b]
对 CGI 提供了真正的[/i] PATH_INFO/PATH_TRANSLATED
支持。以前 PHP 的行为是将 PATH_TRANSLATED 设为
SCRIPT_FILENAME,而不管 PATH_INFO 是什么。有关 PATH_INFO
的更多信息见 cgi 规格。将此值设为 1 将使 PHP CGI
修正其路径以遵守规格。设为 0 将使 PHP
的行为和从前一样。默认为零。用户应该修正其脚本使用 SCRIPT_FILENAME
而不是 PATH_TRANSLATED。
cgi.force_redirect
boolean[/b]
在大多数 web 服务器中以 CGI 方式运行 PHP
时很有必要用 cgi.force_redirect 提供安全。PHP
默认其为 On。可以将其关闭,但风险自担[/i]。
注:
Windows 用户:可以安全地在 IIS 之下将其关闭,事实上必须这么做。要在
OmniHTTPD 或 Xitami 之下使用也必须将其关闭。
cgi.redirect_status_env
string[/b]
如果打开了 cgi.force_redirect,并且不是在
Apache 或 Netscape(iPlanet)web
服务器之下运行,可能需要设定一个环境变量名,PHP
将去寻找它来知道可以继续执行下去。
注:
设定此变量可能会导致安全问题,首先要知道自己在做什么。
fastcgi.impersonate
string[/b]
IIS(在基于 WINNT 的操作系统上)中的 FastCGI
支持模仿客户端安全令牌的能力。这使得 IIS
能够定义运行时所基于的请求的安全上下文。Apache
中的 mod_fastcgi 不支持此特性(03/17/2002)。如果在
IIS 中运行则设为 1。默认为 0。
cgi.rfc2616_headers
int[/b]
指定 PHP 在发送 HTTP 响应代码时使用何种报头。如果设定为 0,PHP
发送一个 Status: 报头,Apache 和其它 web server 都支持。如果此选项设定为 1,PHP
将发送 RFC 2616
兼容的报头。除非你知道自己在做什么,否则保留其值为 0。
文件上传
表格 G-8. 文件上传配置选项名称 | 默认值 | 可修改范围 | 更新记录 |
---|---|---|---|
file_uploads | "1" | PHP_INI_SYSTEM | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。从 PHP 4.0.3 起可用。 |
upload_tmp_dir | NULL | PHP_INI_SYSTEM | |
upload_max_filesize | "2M" | PHP_INI_PERDIR | 在 PHP <= 4.2.3 时是 PHP_INI_ALL。 |
file_uploads
boolean[/b]
是否允许 HTTP
文件上传。参见
upload_max_filesize,upload_tmp_dir 和
post_max_size 指令。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
upload_tmp_dir
string[/b]
文件上传时存放文件的临时目录。必须是
PHP 进程所有者用户可写的目录。如果未指定则
PHP 使用系统默认值。
upload_max_filesize
integer[/b]
所上传的文件的最大大小。
当使用 integer[/b]
类型时,其值以字节为度量单位。还可以用简化符号,说明见此
FAQ。
普通 SQL
表格 G-9. 普通 SQL 配置选项名称 | 默认值 | 可修改范围 | 更新记录 |
---|---|---|---|
sql.safe_mode | "0" | PHP_INI_SYSTEM |
sql.safe_mode
boolean[/b]
调试器配置选项
注意 |
仅 PHP 3 实现了一个默认的调试器。更多信息请参考附录 E。 |
string[/b]
调试器所使用的主机的 DNS 名或 IP 地址。
debugger.port
string[/b]
调试器所用的端口号。
debugger.enabled
boolean[/b]
是否启用调试器。
相关文章推荐
- php.ini 核心配置选项说明
- php.ini 核心配置选项说明
- php.ini 核心配置选项说明
- php.ini 核心配置选项说明
- php.ini 核心配置选项说明
- PHP - Manual手册 - 附录 - php.ini 配置选项 - php.ini 核心配置选项说明 - file_uploads
- 〔php.ini 核心配置选项说明〕
- php.ini 核心配置选项说明
- php.ini 核心配置选项说明
- php.ini 核心配置选项说明
- PHP - Manual手册 - Appendices附录 - php.ini directives - php.ini配置选项 - Description of core php.ini directives描述核心php.ini配置选项 - regis
- PHP配置文件 php.ini 选项说明
- 【转】php.ini 核心配置选项描述
- php.ini中文件上传功能配置选项说明
- php.ini 配置详细选项
- php.ini配置说明
- php.ini 的中文配置说明
- 文件上传成败关键的几点php.ini配置的几点说明
- php配置文件php.ini中文说明详解
- PHP.INI配置:Session配置详细说明教程