PHP引擎php.ini参数优化
2016-08-20 13:21
176 查看
参数以外常见的PHP优化方法手段
1)php引擎缓存加速优化
tmpfs,基于内存的文件系统,加快转存暂存文件的速度
1)php引擎缓存加速优化
#xcache、ZendOpcache、eaccelerator #http://www.lichengbing.cn/archivers/270.html2) 使用tmpfs作为缓存加速缓存的文件目录
tmpfs,基于内存的文件系统,加快转存暂存文件的速度
[root@web01 ~]# mount -t tmpfs tmpfs /dev/shm -o size=256m [root@web01 ~]# mount -t tmpfs tmpfs /dev/shm /tmp/eaccelerator #上传图片缩略图临时处理目录和缓存目录3) 防止PHP程序上传文件到图片附件目录
#Nginx防御 http://www.lichengbing.cn/archivers/279.html[/code]
php.ini参数调优
php.ini配置文件[root@web01 php-5.5.32]# ll php.ini-* -rw-r--r--. 1 1001 1001 69236 Feb 2 2016 php.ini-development #开发环境 -rw-r--r--. 1 1001 1001 69266 Feb 2 2016 php.ini-production #生产环境(关闭日志或者输出到文件中)1) 打开php的安全模式
php安全模式是个非常重要的php内嵌的安全机制,能够控制一些php的函数执行,比如system()调用系统命令函数safe_mode = on2)用户组安全safe_mode_gid = off #防止php程序对脚本执行有权限3)关闭危险函数
如果打开了安全模式,那么函数禁止是可以不需要的,但是我们为了安全还是可以关闭的,特别是phpinfo()disable_functions = system,passthru,exec,shell_exec,popen,phpinfo如果要禁止任何文件和目录的操作,那么可以关闭很多文件操作disable_functions = chdir,chroot,dir,getcwd,opendir,readdir,scandie,fopen,unlink,delete,copy,mkdir,rmdir,rename,file,file_getcontents,fputs,fwrite,chgrp,chmod,chown4)关闭PHP版本信息在http头中的泄漏expose_php = off5)关闭注册全局变量
在PHP中提交的变量,包括使用POST或者GET提交的变量,都将自动注册为全局变量,能够直接访问,这是对服务非常不安全的register_globals = off #推荐使用预定义的超全局变量:$_ENV,$_GET,$_POST,$_COOKIE,$_SERVER #该指令收variables_order指令的影响,5.5自动关闭了6)打开magic_quotes_gpc来防止SQL注入
SQL注入是非常危险的问题,轻则网站后台被入侵,重则整个服务器沦陷magic_quotes_gpc = off这个默认是关闭的,如果它打开将自动把用户提交对sql的查询进行转换,比如把 ' 转换为 \' 这对防止sql注入有重大作用,所以推荐设置为magic_quotes_gpc = onSQL注入防范:
Apache 中的mod_security和mod_evasive
Nginx lua waf
7)错误信息控制
一般php在没有连接到数据库或者其他情况下会提示错误,一般信息都会包含php脚本当前的路径信息或者查询的SQL语句信息,这类信息提供给黑客后市不安全的,建议关闭错误提示display_errors = off #正式环境不要给用户报错8)错误日志log_errors = on #打开日志开关 error_log = /application/logs/php_error.log #设置路径
部分资源限制参数优化
1)设置每个脚本运行的最长时间
但无法上传较大的文件或者后台备份数据经常超时时,此时需要调整如下设置max_execution_time = 30 #每个脚本允许的最大执行时间,0表示没有限制 #这个参数有助于阻止恶劣脚本无休止的占用服务器资源2)每个脚本使用的最大内存memory_limit = 128m3)每个脚本等待输入数据最长时间max_input_time = 60; #(-1表示不限制)4)上传文件的最大许可upload_mx_filesize = 2M;
部分安全参数优化
1)禁止打开远程地址
记得最近出的php include的那个安全漏洞吧!就是在一个php程序中的include了变量,那么入侵者就可以利用这个控制服务器在本地执行远程的一个php程序,例如phpshellallow_url_fopen = off2)设定防止Nginx文件解析错误漏洞cgi.fix_path = 03)调整php sesson会话共享信息存放位置session.save_handler = memcache session.save_path = "tcp://10.0.0.8:1211" #首先搭建好memcache环境
相关文章推荐
- PHP引擎php.ini参数优化
- PHP引擎php.ini 和fastcti优化
- my.ini描述之mysql的十条另类优化参数
- [导入]php.ini中几个参数的设置
- PHP.ini 性能优化
- 如果你 <?php ?>好使 但 <? ?> 就不好使,其实是php.ini中的一个参数问题
- php.ini中error_reporting参数的配置
- php.ini中allow_call_time_pass_reference参数的意思
- MySQL Innodb 存储引擎参数优化
- php.ini中allow_call_time_pass_reference参数的意思
- MySQL_Innodb_引擎优化(-)_参数篇
- php.ini中几个参数的设置
- php批量缩放图片的代码[ini参数控制]
- php批量缩放图片的代码[ini参数控制]
- PHP.INI里面的参数说明
- php.ini中几个参数的设置
- php参数优化
- PHP.ini 性能优化
- nginx+php-fpm性能参数优化原则
- phpadmin如何导入导出大数据文件及php.ini参数修改