位置: 编程技术 - 正文
推荐整理分享php文件包含目录配置open_basedir的使用与性能详解(php文件包含目录文件吗),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:php文件目录源码,php文件包含的主要内容是什么,php文件包含语句,php 包含文件,php文件包含目录文件吗,php文件包含目录怎么办,php文件包含目录怎么办,php文件包含目录吗,内容如对您有帮助,希望把文章链接给更多的朋友!
1.open_basedir介绍
open_basedir 将php所能打开的文件限制在指定的目录树中,包括文件本身。当程序要使用例如fopen()或file_get_contents()打开一个文件时,这个文件的位置将会被检查。当文件在指定的目录树之外,程序将拒绝打开。
本指令不受安全模式打开或关闭的影响。
2.open_basedir设置方法
1.在php.ini 加入
open_basedir="指定目录"
2.在程序中使用
ini_set('open_basedir', '指定目录');
但不建议使用这种方法
3.在apache的httpd.conf中的Directory配置
php_admin_value open_basedir "指定目录"httpd.conf中的VritualHost
php_admin_value open_basedir "指定目录"
4.nginx fastcgi.conf
fastcgi_param PHP_VALUE "open_basedir=指定目录"
用open_basedir指定的限制实际上是前缀,不是目录名。
也就是说 open_basedir=/home/fdipzone 也会允许访问/home/fdipzone_abc,如果要将访问限制为目录,请使用斜线结束路径名,例如:open_basedir=”/home/fdipzone/”
如果要设置多个目录,window使用;分隔目录,linux使用:分隔目录。
3.使用open_basedir限制目录访问
首先创建一个VirtualHost,
设置open_basedir 为/home/fdipzone/sites/in.fdipzone.com/
在上一层目录 /home/fdipzone/sites/ 中创建一个test.txt文件,在in.fdipzone.com中创建php执行以下代码
因为test.txt不在限定的目录范围内,因此php提示警告
Warning: file_get_contents(): open_basedir restriction in effect. File(../test.txt) is not within the allowed path(s): (/home/fdipzone/sites/in.fdipzone.com/) in /home/fdipzone/sites/in.fdipzone.com/index.php on line 3
4.设置open_basedir的性能分析
open_basedir开启后会影响I/O,因为每个调用的文件都需要判断是否在限制目录内。
测试程序,读取限制目录内同一文件次
关闭open_basedir测试
run time . ms
打开open_basedir测试
run time . ms
开启open_basedir后,执行时间是关闭的3倍。
总结:使用open_basedir可以限制程序可操作的目录和文件,提高系统安全性。但会影响I/O性能导致系统执行变慢,因此需要根据具体需求,在安全与性能上做平衡。
以上这篇php文件包含目录配置open_basedir的使用与性能详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。
php 调用ffmpeg获取视频信息的简单实现 ffmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,包含了libavcodec,保证高可移值性和编解码质量。本文将介绍使
php PDO判断连接是否可用的实现方法 mysql_ping()检查到服务器的连接是否正常。如果到服务器的连接可用,则返回true,否则返回false。但PDO不支持mysql_ping()方法,因此需要自己编写代码模拟my
thinkphp 字母函数详解T/I/N/D/M/A/R/U 1、/***获取模版文件格式资源://模块@主题/控制器/操作*@paramstring$template模版资源地址*@paramstring$layer视图层(目录)名称*@returnstring*/T($template='',$layer='')2
标签: php文件包含目录文件吗
本文链接地址:https://www.jiuchutong.com/biancheng/292582.html 转载请保留说明!上一篇:thinkphp关于简单的权限判定方法(thinkphp 快速入门)
下一篇:php 调用ffmpeg获取视频信息的简单实现(php如何调用function)
友情链接: 武汉网站建设