php核心配置选项(部分)

供自己以后查询使用
1.register_gloabls
作用:该选项在on的条件下,会直接把用户GET,POST等方式提交上来参数注册成全局变量,并进行初始化为参数对应的值,使得提交参数可以直接在脚本中使用。
版本:在php版本小于等于4.2.4时设置为php_ini_ALL,从php5.3.0起被弃用,不推荐使用,在php5.4.0中移除了该选项
测试代码:

<?php if($user=='admin'){ echo 'true'; } else{ echo 'you are a hacker'; } ?>

访问http://www.xxx.com?user=admin 会输出true

2.allow_url_include
作用:这个为on的情况下,它可以直接包含远程文件,当存在include( v a r ) var)且 var可控的情况下,可以直接控制$var变量来执行代码。
版本:在php5.2.0后默认设置为off 配置范围为PHP_INI_ALL。
测试代码:

<?php include $_GET['jlb']; ?>

访问http://www.xxx.com?jlb=…/1.php 如果在服务器上当前网页所在位置的上一级如果存在1.php 就会输出1.php里面内容。

3.magic_quotes_gpc
作用:当该选项为on时,会自动在GET.POST.COOKIE变量中的单引号,双引号,反斜杠及空字符的前面加上反斜杠(),但是在php5中magic_quotes_gpc并不会过滤$_SERVER变量,导致很多类似client-ip,referer一类的漏洞能够利用。
版本:在php5.3之后不推荐使用,在5.4之后干脆被取消。php版本号小于4.2.3时,配置范围是PHP_INI_ALL,php版本号大于4.2.3时,配置范围时PHP_INI_PERDIR。

4.magic_quotes_runtime
作用:在单引号,双引号,反斜杠及空字符的前面加上反斜杠() 它和magic_quotes_gpc的区别是,处理的对象不一样,runtime只对从数据库或者文件中的数据进行过滤。受影响的函数包括get_meta_tags() file_get_contents() file() fgets() fwrite() fread() fputcsv() stream_socket_revcfrom() exec() system() passthru() stream_get_contents() bzread() gzfile() gzgets() gzwrite() gzread() exif_read_data() dba_insert() dba_replace() dba_Fetch() ibase_fetch_row() ibase_fetch_assoc() ibase_fetch_object() mssql_fetch_row() mssql_fetch_object() mssql_fetch_array() mssql_fetch_assoc() mysqli_Fetch_row() mysqli_fetch_array() mysqli_Fetch_assoc() mysqli_fetch_object() pg_fetch_row() pg_fetch_assoc() pg_fetch_array() pg_fetch_object() pg_fetch_all() pg_select() sybase_fetch_object() sybase_fetch_array() sybase_fetch_assoc() SqlFileObject::fgets() sqlfileobject::fgetcsv() sqlfileobject::fwrite().
版本:此函数在php5.4之后被取消 配置范围是PHP_INI_ALL

5.magic)quotes_sybase
作用:magic_quotes_sybase指令用于自动过滤特殊字符,当设置为on的时候,它会覆盖掉magic_quotes_gpc=on 的配置,它对GET POST Cookie进行处理,它仅仅是转义了空字符和把单引号变成了双引号。
版本:php5.4.0后移除了该选项

6.safe_mode
7.open_basedir
作用:用来限制php只能访问哪些目录,open_basedir=/www/a那么目录/www/a and /www/ab都是可以访问的,所以如果要将访问仅限制在指定的目录,要像这样open_basedir=/www/a/
版本:php小于5.2.3是php_ini_system 在php版本大于等于5.2.3是php_ini_all

7.disable_functions
作用:禁止一些危险函数!!!!!特别注意 要把dl() 函数也加到上面 disable_functions=phpinfo,eval, 用逗号分隔

8.display_errors error_reporting
作用:不展示错误提示 配置范围php_ini_all

9.常用指令
safe_mode_gid php_ini_system 以安全模式打开文件时默认使用uid来对比,设置本指令为on时使用gid能做宽对比
expose_php php.ini.only 是否在服务器返回信息http头显示php版本
max_execution_time php_ini_all
memory_limit php_ini_all
log_errors php_ini_all
log_errors_max_len php_ini_all
variables_order php_ini_perdir
post_max_size php_ini_perdir
auto_prepend_file php_ini_perdir
auto_aooend_file php_ini_perdir
extension_dir php_ini_system
file_uploads php_ini_system
upload_tmp_dir php_ini_system
upload_max_filesize php_ini_system

发布了28 篇原创文章 · 获赞 5 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43342566/article/details/88770016