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 相关文章推荐
模仿OSO的论坛(五)
Oct 09 PHP
数字转英文
Dec 06 PHP
使用 eAccelerator加速PHP代码的方法
Sep 30 PHP
JS与PHP向函数传递可变参数的区别实例代码
May 18 PHP
PHP+Mysql+jQuery实现发布微博程序 jQuery篇
Oct 08 PHP
PHP逐行输出(ob_flush与flush的组合)
Feb 04 PHP
php获取操作系统语言代码
Nov 04 PHP
php获取随机数组列表的方法
Nov 13 PHP
Thinkphp连表查询及数据导出方法示例
Oct 15 PHP
Yii框架防止sql注入,xss攻击与csrf攻击的方法
Oct 18 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
Aug 01 PHP
Yii框架分页技术实例分析
Aug 30 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
phpMyAdmin2.11.6安装配置方法
2008/08/24 PHP
php 获取完整url地址
2008/12/20 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
2014/08/20 PHP
wordpress安装过程中遇到中文乱码的处理方法
2015/04/21 PHP
WordPress中设置Post Type自定义文章类型的实例教程
2016/05/10 PHP
PHP7.1实现的AES与RSA加密操作示例
2018/06/15 PHP
php实现将数据做成json的格式给前端使用
2018/08/21 PHP
基于jquery的时间段实现代码
2012/08/02 Javascript
javascript两种function的定义介绍及区别说明
2013/05/02 Javascript
Jquery显示、隐藏元素以及添加删除样式
2013/08/09 Javascript
jQuery EasyUI 菜单与按钮之创建简单的菜单和链接按钮
2015/11/18 Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
2016/07/08 Javascript
React-Native中禁用Navigator手势返回的示例代码
2017/09/09 Javascript
vue实现简单loading进度条
2018/06/06 Javascript
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
2019/01/19 Javascript
Vue 中 a标签上href无法跳转的解决方式
2019/11/12 Javascript
mpvue微信小程序开发之实现一个弹幕评论
2019/11/24 Javascript
vue element-ui实现动态面包屑导航
2019/12/23 Javascript
js实现无缝轮播图插件封装
2020/07/31 Javascript
Vue常用API、高级API的相关总结
2021/02/02 Vue.js
python算法学习之桶排序算法实例(分块排序)
2013/12/18 Python
Python中标准模块importlib详解
2017/04/16 Python
Pycharm编辑器技巧之自动导入模块详解
2017/07/18 Python
Django实现跨域请求过程详解
2019/07/25 Python
解决python父线程关闭后子线程不关闭问题
2020/04/25 Python
浅谈tensorflow中dataset.shuffle和dataset.batch dataset.repeat注意点
2020/06/08 Python
详解Python3 定义一个跨越多行的字符串的多种方法
2020/09/06 Python
利用HTML5绘制点线面组成的3D图形的示例
2015/05/12 HTML / CSS
Raleigh兰令自行车美国官网:英国凤头牌自行车
2018/01/08 全球购物
西班牙香水和化妆品连锁店:Druni
2019/05/05 全球购物
澳大利亚排名第一的露营和户外设备在线零售商:Outbax
2020/05/06 全球购物
精细化工应届生求职信
2013/11/17 职场文书
服装设计师求职信
2014/06/04 职场文书
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
2021/06/11 Python
SQL IDENTITY_INSERT作用案例详解
2021/08/23 MySQL
vue3 自定义图片放大器效果的示例代码
2022/07/23 Vue.js