php-5.2下php.ini 中文版配置说明第1/3页

;;;;;;;;;;;;
;; 语法 ;;

; 该文件的语法非常简单。空白字符和以分号开始的行被简单地忽略。
; 章节标题(例如: [php])也被简单地忽略,即使将来它们可能有某种意义。

; 设置指令的格式如下:
; directive = value
; 指令名(directive)是大小写敏感的!所以"foo=bar"不同于"FOO=bar"。
; 值(value)可以是:
; 1. 用引号界定的字符串(如:"foo")
; 2. 一个数字(整数或浮点数,如:0, 1, 34, -1, 33.55)
; 3. 一个PHP常量(如:E_ALL, M_PI)
; 4. 一个INI常量(On, Off, none)
; 5. 一个表达式(如:E_ALL & ~E_NOTICE)

; INI文件中的表达式仅使用:位运算符、逻辑非、圆括号:
; | 位或
; & 位与
; ~ 位非
; ! 逻辑非

; 布尔标志用 On 表示打开,用 Off 表示关闭。

; 一个空字符串可以用在等号后不写任何东西表示,或者用 none 关键字:
; foo = ; 将foo设为空字符串
; foo = none ; 将foo设为空字符串
; foo = "none" ; 将foo设为字符串'none'

; 如果你在指令值中使用动态扩展(PHP扩展或Zend扩展)中的常量,
; 那么你只能在加载这些动态扩展的指令行之后使用这些常量。

;; httpd.conf ;;

; 还可以在httpd.conf中覆盖php.ini的值,以进行更灵活的配置:
; php_value name value ;设置非bool型的指令,将value设为none则清除先前的设定
; php_flag name on|off ;仅用于设置bool型的指令

; PHP常量(如E_ALL)仅能在php.ini中使用,在httpd.conf中必须使用相应的掩码值。
; 带"SYS"标志的指令只能在httpd.conf中的全局配置部分使用。

;[2007-4-9日更新,增加了更多关于PHP6的信息,并根据PHP-5.2.2修正和添加了一些信息]
;=============================================
;;==========配置指令详解===========================
;=============================================
; 以下每个指令的设定值都与 PHP-5.2.2 内建的默认值相同。
; 也就是说,如果'php.ini'不存在,或者你删掉了某些行,默认值与之相同。

;;;;;;;;;;;;;;
;; Apache ;;

[Apache]
; 仅在将PHP作为Apache模块时才有效。

child_terminate = Off
; PHP脚本在请求结束后是否允许使用apache_child_terminate()函数终止子进程。
; 该指令仅在UNIX平台上将PHP安装为Apache1.3的模块时可用。其他情况下皆不存在。

engine = On
; 是否启用PHP解析引擎。
; 提示:可以在httpd.conf中基于目录或者虚拟主机来打开或者关闭PHP解析引擎。

last_modified = Off
; 是否在Last-Modified应答头中放置该PHP脚本的最后修改时间。

xbithack = Off
; 是否不管文件结尾是什么,都作为PHP可执行位组来解析。

;; PHP核心 ;;

[PHP-Core-DateTime]
; 前四个配置选项目前仅用于date_sunrise()和date_sunset()函数。

date.default_latitude = 31.7667
; 默认纬度

date.default_longitude = 35.2333
; 默认经度

date.sunrise_zenith = 90.583333
; 默认日出天顶

date.sunset_zenith = 90.583333
; 默认日落天顶

date.timezone =
; 未设定TZ环境变量时用于所有日期和时间函数的默认时区。
; 中国大陆应当使用"PRC"
; 应用时区的优先顺序为:
; 1. 用date_default_timezone_set()函数设定的时区(如果设定了的话)
; 2. TZ 环境变量(如果非空的话)
; 3. 该指令的值(如果设定了的话)
; 4. PHP自己推测(如果操作系统支持)
; 5. 如果以上都不成功,则使用 UTC

[PHP-Core-Assert]

assert.active = On
; 是否启用assert()断言评估

assert.bail = Off
; 是否在发生失败断言时中止脚本的执行

assert.callback =
; 发生失败断言时执行的回调函数

assert.quiet_eval = Off
; 是否使用安静评估(不显示任何错误信息,相当于error_reporting=0)。
; 若关闭则在评估断言表达式的时候使用当前的error_reporting指令值。

assert.warning = On
; 是否对每个失败断言都发出警告

[PHP-Core-SafeMode]
; 安全模式是为了解决共享服务器的安全问题而设立的。
; 但试图在PHP层解决这个问题在结构上是不合理的,
; 正确的做法应当是修改web服务器层和操作系统层。
; 因此在PHP6中废除了安全模式,并使用基于open_basedir的安全防护。
; 此部分指令在PHP6中已经全部被删除。

safe_mode = Off
;SYS
; 是否启用安全模式。
; 打开时,PHP将检查当前脚本的拥有者是否和被操作的文件的拥有者相同,
; 相同则允许操作,不同则拒绝操作。

safe_mode_gid = Off
;SYS
; 在安全模式下,默认在访问文件时会做UID比较检查。
; 但有些情况下严格的UID检查反而是不适合的,宽松的GID检查已经足够。
; 如果你想将其放宽到仅做GID比较,可以打开这个参数。

safe_mode_allowed_env_vars = "PHP_"
;SYS
; 在安全模式下,用户仅可以更改的环境变量的前缀列表(逗号分隔)。
; 允许用户设置某些环境变量,可能会导致潜在的安全漏洞。
; 注意: 如果这一参数值为空,PHP将允许用户更改任意环境变量!

safe_mode_protected_env_vars = "LD_LIBRARY_PATH"
;SYS
; 在安全模式下,用户不能更改的环境变量列表(逗号分隔)。
; 这些变量即使在safe_mode_allowed_env_vars指令设置为允许的情况下也会得到保护。

safe_mode_exec_dir = "/usr/local/php/bin"
;SYS
; 在安全模式下,只有该目录下的可执行程序才允许被执行系统程序的函数执行。
; 这些函数是:system, escapeshellarg, escapeshellcmd, exec, passthru,
; proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec

safe_mode_include_dir =
;SYS
; 在安全模式下,该组目录和其子目录下的文件被包含时,将跳过UID/GID检查。
; 换句话说,如果此处的值为空,任何UID/GID不符合的文件都不允许被包含。
; 这里设置的目录必须已经存在于include_path指令中或者用完整路径来包含。
; 多个目录之间用冒号(Win下为分号)隔开。
; 指定的限制实际上是一个前缀,而非一个目录名,
; 也就是说"/dir/incl"将允许访问"/dir/include"和"/dir/incls"
; 如果您希望将访问控制在一个指定的目录,那么请在结尾加上斜线。

[PHP-Core-Safe]

allow_url_fopen = On
;SYS
; 是否允许打开远程文件

allow_url_include = Off
;SYS
; 是否允许include/require远程文件。

disable_classes =
;SYS
; 该指令接受一个用逗号分隔的类名列表,以禁用特定的类。

disable_functions =
;SYS
; 该指令接受一个用逗号分隔的函数名列表,以禁用特定的函数。

enable_dl = On
;SYS
; 是否允许使用dl()函数。dl()函数仅在将PHP作为apache模块安装时才有效。
; 禁用dl()函数主要是出于安全考虑,因为它可以绕过open_basedir指令的限制。
; 在安全模式下始终禁用dl()函数,而不管此处如何设置。
; PHP6中删除了该指令,相当于设为Off。

expose_php = On
;SYS
; 是否暴露PHP被安装在服务器上的事实(在http头中加上其签名)。
; 它不会有安全上的直接威胁,但它使得客户端知道服务器上安装了PHP。

open_basedir =
;SYS
; 将PHP允许操作的所有文件(包括文件自身)都限制在此组目录列表下。
; 当一个脚本试图打开一个指定目录树之外的文件时,将遭到拒绝。
; 所有的符号连接都会被解析,所以不可能通过符号连接来避开此限制。
; 特殊值'.'指定了存放该脚本的目录将被当做基准目录。
; 但这有些危险,因为脚本的工作目录可以轻易被chdir()改变。
; 对于共享服务器,在httpd.conf中灵活设置该指令将变得非常有用。
; 在Windows中用分号分隔目录,UNIX系统中用冒号分隔目录。
; 作为Apache模块时,父目录中的open_basedir路径将自动被继承。
; 指定的限制实际上是一个前缀,而非一个目录名,
; 也就是说"/dir/incl"将允许访问"/dir/include"和"/dir/incls",
; 如果您希望将访问控制在一个指定的目录,那么请在结尾加上一个斜线。
; 默认是允许打开所有文件。

sql.safe_mode = Off
;SYS
; 是否使用SQL安全模式。
; 如果打开,指定默认值的数据库连接函数将会使用这些默认值代替支持的参数。
; 对于每个不同数据库的连接函数,其默认值请参考相应的手册页面。

[PHP-Core-Error]

error_reporting = E_ALL & ~E_NOTICE
; 错误报告级别是位字段的叠加,推荐使用 E_ALL | E_STRICT
; 1 E_ERROR 致命的运行时错误
; 2 E_WARNING 运行时警告(非致命性错误)
; 4 E_PARSE 编译时解析错误
; 8 E_NOTICE 运行时提醒(经常是bug,也可能是有意的)
; 16 E_CORE_ERROR PHP启动时初始化过程中的致命错误
; 32 E_CORE_WARNING PHP启动时初始化过程中的警告(非致命性错)
; 64 E_COMPILE_ERROR 编译时致命性错
; 128 E_COMPILE_WARNING 编译时警告(非致命性错)
; 256 E_USER_ERROR 用户自定义的致命错误
; 512 E_USER_WARNING 用户自定义的警告(非致命性错误)
; 1024 E_USER_NOTICE 用户自定义的提醒(经常是bug,也可能是有意的)
; 2048 E_STRICT 编码标准化警告(建议如何修改以向前兼容)
; 4096 E_RECOVERABLE_ERROR 接近致命的运行时错误,若未被捕获则视同E_ERROR
; 6143 E_ALL 除E_STRICT外的所有错误(PHP6中为8191,即包含所有)

track_errors = Off
; 是否在变量$php_errormsg中保存最近一个错误或警告消息。

display_errors = On
; 是否将错误信息作为输出的一部分显示。
; 在最终发布的web站点上,强烈建议你关掉这个特性,并使用错误日志代替(参看下面)。
; 在最终发布的web站点打开这个特性可能暴露一些安全信息,
; 例如你的web服务上的文件路径、数据库规划或别的信息。

display_startup_errors = Off
; 是否显示PHP启动时的错误。
; 即使display_errors指令被打开,关闭此参数也将不显示PHP启动时的错误。
; 建议你关掉这个特性,除非你必须要用于调试中。

report_memleaks = On
; 是否报告内存泄漏。这个参数只在以调试方式编译的PHP中起作用,
; 并且必须在error_reporting指令中包含 E_WARNING

report_zend_debug = On
; 尚无说明文档

html_errors = On
; 是否在出错信息中使用HTML标记。
; 注意: 不要在发布的站点上使用这个特性!

docref_root = ;"http://localhost/phpmanual/"
docref_ext = ;".html"
; 如果打开了html_errors指令,PHP将会在出错信息上显示超连接,
; 直接链接到一个说明这个错误或者导致这个错误的函数的页面。
; 你可以从http://www.php.net/docs.php下载php手册,
; 并将docref_root指令指向你本地的手册所在的URL目录。
; 你还必须设置docref_ext指令来指定文件的扩展名(必须含有'.')。
; 注意: 不要在发布的站点上使用这个特性。

error_prepend_string = ;"<font color=#f00>"
; 用于错误信息前输出的字符串
error_append_string = ;"</font>"
; 用于错误信息后输出的字符串

xmlrpc_errors = Off
;SYS
xmlrpc_error_number = 0
; 尚无文档

[PHP-Core-Logging]

define_syslog_variables = Off
; 是否定义各种系统日志变量,如:$LOG_PID, $LOG_CRON 等等。
; 关掉它以提高效率的好主意。
; 你可以在运行时调用define_syslog_variables()函数来定义这些变量。

error_log =
; 将错误日志记录到哪个文件中。该文件必须对Web服务器用户可写。
; syslog 表示记录到系统日志中(NT下的事件日志, Unix下的syslog(3))
; 如果此处未设置任何值,则错误将被记录到Web服务器的错误日志中。

log_errors = Off
; 是否在日志文件里记录错误,具体在哪里记录取决于error_log指令。
; 强烈建议你在最终发布的web站点时使用日志记录错误而不是直接输出,
; 这样可以让你既知道那里出了问题,又不会暴露敏感信息。

log_errors_max_len = 1024
; 设置错误日志中附加的与错误信息相关联的错误源的最大长度。
; 这里设置的值对显示的和记录的错误以及$php_errormsg都有效。
; 设为 0 可以允许无限长度。

ignore_repeated_errors = Off
; 记录错误日志时是否忽略重复的错误信息。
; 错误信息必须出现在同一文件的同一行才被被视为重复。

ignore_repeated_source = Off
; 是否在忽略重复的错误信息时忽略重复的错误源。

当前1/3页 123下一页阅读全文

时间: 2008-08-16

php.ini 配置心得(上传等限制)

配置php.ini(php.ini为 c:\windows下的 php.ini)不是PHP目录下的 php.ini 修改了一些文件上传以及内存使用最大限制: memory_limit = 20M post_max_size = 20M upload_max_filesize = 20M 备注:post_max_size和upload_max_filesize一起配置才能设置成功上传文件的大小. session.save_path = c:/temp 在session.save_path中使用正斜

php中动态修改ini配置

1,运行时改变配置 在前一篇中曾经谈到,ini_set函数可以在php执行的过程中,动态修改php的部分配置.注意,仅仅是部分,并非所有的配置都可以动态修改.关于ini配置的可修改性,参见:http://php.net/manual/zh/configuration.changes.modes.php 我们直接进入ini_set的实现,函数虽然有点长,但是逻辑很清晰: 复制代码 代码如下: PHP_FUNCTION(ini_set) {     char *varname, *new_value

php.ini文件配置好后,zend路径也全部配置正确,但是phpinfo()还显示没有zend信息

php.ini文件配置好后,zend路径也全部配置正确,但是phpinfo()还显示没有zend信息 查看zend的目录是否有user权限.默认即可. isapi模式安装php,无法访问网站常见问题. 需要在php5isapi.dll上面添加user权限. phpinfo没法运行 先看php配置的是否正确,不正确再看配置的是什么模式,cgi 或者isapi或者fastcgi模式,然后在查看配置文件. php未找到该页 首先查看.php的扩展文件是否配置正确,然后在查看页面路径是否正确. 配置ph

PHP获取和操作配置文件php.ini的几个函数介绍

1.ini_get()获取配置参数,ini_set()设置配置参数 复制代码 代码如下: <?phpecho ini_get('display_errors'); //1//动态修改php.ini配置信息,脚本执行后失效ini_set('display_errors',0);echo ini_get('display_errors');//0 2.ini_get_all()获取所有配置信息 复制代码 代码如下: <?php//打印所有配置信息,巨多...print_r(ini_get_all(

php.ini中的php-5.2.0配置指令详解

;; 关于php.ini ;;  这个文件必须命名为'php.ini'并放置在httpd.conf中的PHPIniDir指令指定的目录中. ; 最新版本的php.ini可以在下面两个位置查看: ; http://cvs.php.net/viewvc.cgi/php-src/php.ini-recommended?view=co ; http://cvs.php.net/viewvc.cgi/php-src/php.ini-dist?view=co ;;;;;;;;;;;; ;; 语法 ;; ;;

php中的ini配置原理详解

使用php的同学都知道php.ini配置的生效会贯穿整个SAPI的生命周期.在一段php脚本的执行过程中,如果手动修改ini配置,是不会启作用的.此时如果无法重启apache或者nginx等,那么就只能显式的在php代码中调用ini_set接口.ini_set是php向我们提供的一个动态修改配置的函数,需要注意的是,利用ini_set所设置的配置与ini文件中设置的配置,其生效的时间范围并不相同.在php脚本执行结束之后,ini_set的设置便会随即失效. 因此本文打算分两篇,第一篇阐述php.

PHP配置文件中最常用四个ini函数

php的配置函数就是几个ini_*的函数,主要是针对配置文件的操作,其实就四个函数:ini_get.ini_set.ini_get_all.ini_restore.个人感觉最有用的就是ini_set和ini_get.  * ini_get():获取配置文件的选项值 这个函数相信很多人都使过,就是获取配置文件中某一个选项的值,如果是true值就返回1,如果是false值就返回0,字符串就返回字符串. 比如手册中的例子: <?php /* Our php.ini contains the follo

基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解

AppServ,XAMPP,WAMP都是集成了apache,mysql,php的套装,使用起来比较方便,就不需要再去一个个的配置php,apache和mysql. 下载相应的安装包进行安装,不过对于php项目来说,WAMP会默认显示NOTICE信息,页面上一大段一大段的,比较难看.怎么去掉这些警告信息呢?先找到php.ini文件. 其路径是:(我的安装路径是D:\wamp)D:\wamp\bin\php\php5.3.10\php.ini ,打开该文件. 在文件中搜索,error_reporti

查找php配置文件php.ini所在路径的二种方法

通常php.ini的位置在: 复制代码 代码如下: /etc目录下或/usr/local/lib目录下. 如果你还是找不到php.ini或者找到了php.ini修改后不生效(其实是没找对),请使用如下办法: 1.新建php文件,写入如下代码 复制代码 代码如下: <?phpecho phpinfo();[code] 然后在浏览器访问该页面,搜索php.ini, 2.执行,(需要修改php为你自己的路径)[code]/usr/local/php/bin/php --ini 会显示php.ini所在

php获取网站根目录物理路径的几种方法(推荐)

在PHP中获取网站根目录物理路径. 在php程序开发中经常需要获取当前网站的目录,我们可以通过常量定义获取站点根目录物理路径,方便在程序中使用. 下面介绍几种常用的获取网站根目录的方法. php获取网站根目录方法一: <?php define("WWWROOT",str_ireplace(str_replace("/","\\",$_SERVER['PHP_SELF']),'',__FILE__)."\\"); echo

jsp中获得路径的两种方法和获得url路径的方法(推荐)

<%=request.getContextPath()%>是解决相对路径的问题,可返回站点的根路径. <a href="<%=request.getContextPath()%>/XXX.jsp"> //这样获得的是绝对路径 <a href="XXX.jsp"> //这样获得的是相对路径 <a href="<%=request.getContextPath()%>/XXXX.jsp"

图解找出PHP配置文件php.ini的路径的方法

近来,有不博友问php.ini存在哪个目录下?或者修改php.ini以后为何没有生效?基于以上两个问题,我觉得有必要教一下刚接触PHP的博友们如何找到PHP调用php.ini的路径目录. 一般安装PHP环境无非有两种平台,Linux环境下与WIN平台下.而WIN平台居多,因为现在套装安装包非常方便,如appserv.wamp一件安装包等等.而Linux下也有LNMP一键安装包,非常方便.由于这些安装做了简化,所以自然的许多博友就不太清楚环境安装好了以后php.ini放在哪个目录下,或者在某个目录

VBS中解决带空格路径的三种方法

方法一: Set wshell=CreateObject("WScript.Shell") wshell.Run """C:\Program Files\360\360se\360se.exe""",5,True Set wshell = Nothing 方法二: temp="C:\Program Files\360\360se3\360se.exe" path = Chr(34) & temp &

shell查找当前目录下大于1M的文件的三种方法分享

1.使用find的参数实现 复制代码 代码如下: [root@xiaobb mnt]# find . -maxdepth 1 -size +1000000c./sys.tar.gz./install.tar.bz2./CTeX_2.9.0.152_Full.exe./php-5.3.6.tar.gz[root@xiaobb mnt]# ls -lhtotal 1.3G-rw-r--r-- 1 root root 1.1G 2011-04-28 11:35 CTeX_2.9.0.152_Full.

Zend Framework教程之配置文件application.ini解析

本文分析了Zend Framework配置文件application.ini用法.分享给大家供大家参考,具体如下: 最方便,常用的配置方式使用配置文件.配置文件的具体的相关设置选项如下: php.ini的相关的配置选项,具体格式如下: phpSettings.配置选项,例如 phpSettings.display_startup_errors = 1 phpSettings.display_errors = 1 includePath相关配置 includePaths.library = APP

修改Apache配置指定php配置文件php.ini的位置方法

一般Apache安装php后,php配置文件默认加载位置在php/lib/文件夹下,如果该文件夹下没有php.ini文件则apache就会找不到php的配置文件,这时有两种方法, 第一种方法:就是复制一个相同版本的php的配置文件到该默认加载文件夹下,那么此时该配置文件中的配置就会被应用. 第二种方法:就是指定一个现存的php.ini位置.具体方法如下: (在httpd.conf文件最后一行添加PHPIniDir /usr/local/lib/php.ini ) 如下图: 修改后Apache配置

web.xml中如何设置配置文件的加载路径实例详解

web.xml中如何设置配置文件的加载路径实例详解 web应用程序通过Tomcat等容器启动时,会首先加载web.xml文件,通常我们工程中的各种配置文件,如日志.数据库.spring的文件等都在此时被加载,下面是两种常用的配置文件加载路径,即配置文件可以放到 SRC目录下或者可以放到WEB-INF根目录下 第一种在web.xml中这样配置: <context-param> <param-name >contextConfigLocation </param-name >

PHP获取路径和目录的方法总结【必看篇】

PHP获取目录和的方法通过魔术变量:通过超级全局变量:通过相关函数等等: <?php /** * PHP获取路径或目录实现 */ //魔术变量,获取当前文件的绝对路径 echo "__FILE__: ========> ".__FILE__; echo '<br/>'; //魔术变量,获取当前脚本的目录 echo "__DIR__: ========> ".__DIR__; echo '<br/>'; //dirname返回