详解 php.ini 配置文件下常用参数

Posted by 撒得一地 on 2016年6月23日 in PHP笔记

无论你是新手还是经验丰富的 PHP 程序员,了解 PHP.ini 配置是必不可少的。它是一个重要的配置文件,用于自定义 PHP 在运行时的行为。PHP 服务器启动时,它首先会寻找 PHP.ini 文件,通过加载它来设置各种值。

通过修改 php.ini 文件里的各种参数,你可以对 PHP 设置进行更改。你可以使用服务器的默认设置,也可以通过编辑现有的 php.ini 文件,来更改特定设置或创建一个新的文本文件并将其命名为 php.ini。

在这里我们解释 php.ini 文件下一些常见参数,你可以通过设置这些参数来修改和设定 PHP 相关设置。

max_execution_time

这设置了 PHP 脚本在解析器将它终止前,该脚本可以运行的最长时间,单位是秒。这有助于防止一些脚本对服务器进行捆绑,比如有一个死循环,在没有人为干扰下,如果没有设置超时时间,那么服务器将永无休止的运行这个死循环。max_execution_time 默认设置为 30秒,即一个脚本最常执行时间为30秒,如果超过这个时间解析器则会将它终止掉。而在命令行运行 PHP 时,默认设置为 0,即没有超时时间,不管一个 PHP 脚本运行多久,PHP 解析器都会去执行它,注意,在命令行的时候才这样。

error_reporting

通过这一参数,你可以设置错误报告级别,通俗来说就是设置报告哪些错误。该参数要么是一个整型,表示了一个位字段,要么是一个常量。PHP 5.3 或更高版本中,默认值有这几个级别 E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED 。

#设置错误报告级别为 E_ALL  
error_reporting = E_ALL

html_errors

当 PHP 显示或记录一个错误时,它可以使用 HTML 格式来显示错误消息,以便于阅读。此指令控制了是否设置 HTML 格式来显示错误消息。

#设置错误信息采用html格式  
html_errors = On

track_errors

如果启用了这个参数,那么过去的错误消息将永远存在在变量 $php_errormsg 中。

track_errors = On

doc_root

如果你正在使用 Apache,那么已为此服务器设置了文档根目录。该参数指定了 PHP 在服务器上的根目录。仅在非空时使用。如果 PHP 被配置为安全模式,则此目录之外的文件一概不被解析。

doc_root = ''

short_open_tag

这个标签开启以后可以使用PHP的短标签:(<? ?>)。同时,只有开启这个才可以使用 <?= 以代替 <? echo 。建议您不要使用短标签,而是使用完整的 <?php 和 ?> 标签。

short_open_tag = Off

upload_tmp_dir

用于指定 PHP 文件上传时的临时存储目录。任何用户来运行 PHP 时,都必须保证该目录是可写的。如果不指定该目录的值, PHP 将使用系统的默认值。此外如果指定的目录,在这里是不可写,PHP 会自动采用原来系统的默认临时目录。

upload_tmp_dir = ''

file_uploads

是否允许HTTP文件上传。默认值为On允许HTTP文件上传,此选项不能设置为Off。

file_uploads = On

max_input_time

这在 PHP 4.3.0 以后可用。此变量可以以秒为单位对通过POST、GET以及PUT方式接收数据时间进行限制,默认60秒。当我们上传大文件时,可以将这个值设置的较大些。 如果设置为0,则表示无时间限制。

max_input_time = 60

max_input_vars

此功能是从 PHP 5.3.9 后新增的,设定了通过 GET/POST/COOKIE 输入的变量可能被接受的个数。 max_input_vars 默认值为 1000, 正常情况下够用,但当提交表单数超过1000个则要将 php.ini 的 max_input_vars 值调大,否则表单数据就提交不上去。

max_input_vars = 1000

max_file_uploads

该参数是设置每次最大上传文件数量(Maximum number of files that can be uploaded via a single request),超出该数量的文件将被丢弃。默认值为 20,比如在上传文件或图片的时候,一次性上传不能超过20个,如果超过20个也只能成功20个。不过你可以将该值调大。

max_file_uploads = 20

post_max_size

您可以设置 post 提交数据时的大小,默认值 8 MB,但你还可以增加它。此设置还会影响文件上传。上传大文件时,该值必须大于 upload_max_filesize。如果您配置脚本启用内存限制,则 memory_limit 也会影响文件上传。

// default value 'post_max_size'
post_max_size = 8M

enable_post_data_reading

它是 php.ini 下一个重要的设置,自 PHP 5.4.0 后可用,默认情况下设置为已启用。禁用则会导致 $_POST,$_FILES 数据不能被填充,即不能正常读取数据,这时候只能通过 php://input 来获取提交的数据.这对代理请求非常有用,或者可以通过内存有效的方式发送数据。

enable_post_data_reading = Off

display_errors

开启后,则在屏幕上可以显示错误,一般常用在开发模式,但是很多应用在正式环境中也忘记了关闭此选项。错误显示可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利。推荐关闭此选项。 

display_errors = On

default_charset

通过此设置,您可以设置您的字符编码为"UTF-8"。自 PHP 5.6.0 后它是一个默认的字符编码。

default_charset = "utf-8"

上一篇:

下一篇:

相关推荐

网站地图|XML地图

Copyright © 2015-2024 技术拉近你我! All rights reserved.
闽ICP备15015576号-1 版权所有©psz.