PHP safe_mode开启对于PHP系统函数有什么影响


Posted in PHP onNovember 10, 2020

safe_mode是提供一个基本安全的共享环境。

在一个多用户共享的phpweb服务器上,当这台服务器开启了safe_mode模式,有以下函数将会受到影响。

首先,以下尝试访问文件系统的函数将会被限制,运行服务器的用户id,如果想要尝试操作某个文件,必须要用户该文件的读取或者写入的访问权限。

因此,在safe_mode打开的情况下,下列函数将会收到限制:

  • ckdir,
  • move_uploaded_file,
  • chgrp,
  • parse_ini_file,
  • chown,rmdir,
  • copy,
  • rename,
  • fopen,
  • require,
  • highlight_file,
  • show_source,
  • include,
  • symlink,
  • link,
  • touch,
  • mkdir,
  • unlink

以上都是跟操作文件系统有关的函数。

除此之外,一些php扩展的函数也会受到限制,不能在程序里面直接加载扩展,只能到php.ini里加载,而且php如果需要执行操作系统的程序时,必须在safe_mode_exec_dir中指定程序的路径,否则执行将失败。

此外还有

  • exec,
  • shell_exec,
  • pasathru,
  • system,
  • popen等函数会收到限制

同样的,一些php扩展中的函数也将会受到影响。(加载模块:在安全模式下dl函数将被禁止,如果要加载扩展的话,只能修改php.ini中的扩展选项,在php启动的时候加载)。

在php安全模式打开的时候,需要执行系统程序的时候,必须是在safe_mode_exec_dir选项指定目录的程序,否则执行将失败。即使允许执行,那么也会自动的传递给escapeshellcmd函数进行过滤。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
使用php重新实现PHP脚本引擎内置函数
Mar 06 PHP
使用 eAccelerator加速PHP代码的目的
Mar 16 PHP
PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据
Apr 09 PHP
php实现数组筛选奇数和偶数示例
Apr 11 PHP
codeigniter中测试通过的分页类示例
Apr 17 PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
Oct 29 PHP
[原创]php逐行读取txt文件写入数组的方法
Jul 02 PHP
PHP实现的浏览器检查类
Apr 11 PHP
php图像验证码生成代码
Jun 08 PHP
CentOS7.0下安装PHP5.6.30服务的教程详解
Sep 29 PHP
Smarty模板配置实例简析
Jul 20 PHP
分享8个Laravel模型时间戳使用技巧小结
Feb 12 PHP
通过PHP实现用户注册后邮箱验证激活
Nov 10 #PHP
PHP中的异常处理机制深入讲解
Nov 10 #PHP
基于php解决json_encode中文UNICODE转码问题
Nov 10 #PHP
ThinkPHP5分页paginate代码实例解析
Nov 10 #PHP
关于PHP求解三数之和问题详析
Nov 09 #PHP
PHP中isset、empty的用法与区别示例详解
Nov 05 #PHP
PHP后门隐藏的一些技巧总结
Nov 04 #PHP
You might like
PHP安装全攻略:APACHE
2006/10/09 PHP
解析thinkphp import 文件内容变量失效的问题
2013/06/20 PHP
在PHP中使用redis
2013/11/04 PHP
PHP7.1新功能之Nullable Type用法分析
2016/09/26 PHP
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
引入JS文件IE6报语法错误或缺少对象问题的解决方法
2014/01/09 Javascript
JS文本获得焦点清除文本文字的示例代码
2014/01/13 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
javaScript给元素添加多个class的简单实现
2016/07/20 Javascript
Bootstrap 轮播(Carousel)插件
2016/12/26 Javascript
Vue导出json数据到Excel电子表格的示例
2017/12/04 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
使用express搭建一个简单的查询服务器的方法
2018/02/09 Javascript
JS中的两种数据类型及实现引用类型的深拷贝的方法
2018/08/12 Javascript
Vue的路由及路由钩子函数的实现
2019/07/02 Javascript
vue内置组件keep-alive事件动态缓存实例
2020/10/30 Javascript
python微信跳一跳游戏辅助代码解析
2018/01/29 Python
python中plot实现即时数据动态显示方法
2018/06/22 Python
详解Python3迁移接口变化采坑记
2019/10/11 Python
Python面向对象原理与基础语法详解
2020/01/02 Python
python——全排列数的生成方式
2020/02/26 Python
opencv 阈值分割的具体使用
2020/07/08 Python
HTML5 Canvas图像模糊完美解决办法
2018/02/06 HTML / CSS
城市轨道专业个人求职信范文
2013/09/23 职场文书
乌鸦喝水教学反思
2014/02/07 职场文书
补充协议书范本
2014/04/23 职场文书
林肯就职演讲稿
2014/05/19 职场文书
2014年电话销售工作总结
2014/12/01 职场文书
2015年共青团工作总结
2015/05/15 职场文书
2015中学教学工作总结
2015/07/22 职场文书
新郎父母婚礼致辞
2015/07/27 职场文书
关于远足的感想
2015/08/10 职场文书
浅谈Redis存储数据类型及存取值方法
2021/05/08 Redis
Python实现随机生成迷宫并自动寻路
2021/06/13 Python
SQL实现LeetCode(177.第N高薪水)
2021/08/04 MySQL
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android