php.ini 核心配置注意事项
-
设置
register_globals = Off
- PHP5.5版本register_globals配置被删除
- register_globals的危害:会将用户提交的GET,POST参数注册成全局变量并初始化为参数对应的值
-
设置
allow_url_include = Off
,当为On 时会出现文件远程包含漏洞,一般默认设置就好,如下:allow_url_fopen = On
allow_url_include = Off
-
隐藏PHP 版本信息
expose_php = Off
- 不隐藏的话,可以在http头部看到,如
X-Powered-By: PHP/5.6.40
- 不隐藏的话,可以在http头部看到,如
-
设置
upload_tmp_dir '/hotdata/tmp'
- 如果 php.ini 没有设置 ,那么默认 php 进程会读写系统的临时目录(Windows 默认为 C:/windows/temp,Linux 为 /tmp),所以为了保险起见还是设置下这个值
-
设置 PHP可访问目录
open_basedir = '指定目录'
,但是会影响- 开启open_basedir后,执行时间是关闭的3倍。
总结:使用open_basedir可以限制程序可操作的目录和文件,提高系统安全性。但会影响I/O性能导致系统执行变慢,因此需要根据具体需求,在安全与性能上做平衡。
- 开启open_basedir后,执行时间是关闭的3倍。
-
关闭错误显示
display_errors=Off
未完待续