久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

php文件包含目錄配置open_basedir的使用與性能詳解

下面小編就為大家帶來一篇php文件包含目錄配置open_basedir的使用與性能詳解。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

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/

<VirtualHost *:80>
  ServerAdmin webmaster@localhost
  DocumentRoot /home/fdipzone/sites/in.fdipzone.com
  ServerName in.fdipzone.com
  php_admin_value open_basedir "/home/fdipzone/sites/in.fdipzone.com/"
  <Directory "/home/fdipzone/sites/in.fdipzone.com">
    allow from all Options + Indexes
  </Directory>
</VirtualHost>

在上一層目錄 /home/fdipzone/sites/ 中創建一個test.txt文件,在in.fdipzone.com中創建php執行以下代碼

<?php
echo file_get_contents('../test.txt');
?>

因為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,因為每個調用的文件都需要判斷是否在限制目錄內。

測試程序,讀取限制目錄內同一文件10000次

<?php
// 記錄開始時間
$starttime = getMicrotime();

// 讀取10000次文件
for($i=0; $i<10000; $i++){
  file_get_contents('test.txt');
}

// 記錄結束時間
$endtime = getMicrotime();

printf("run time %f ms\r\n", ((float)($endtime)-(float)($starttime))*1000);

function getMicrotime(){
  list($usec, $sec) = explode(' ', microtime());
  return (float)$usec + (float)$sec;
}
?>

關閉open_basedir測試

run time 137.237072 ms

打開open_basedir測試

run time 404.207945 ms

開啟open_basedir后,執行時間是關閉的3倍。

總結:使用open_basedir可以限制程序可操作的目錄和文件,提高系統安全性。但會影響I/O性能導致系統執行變慢,因此需要根據具體需求,在安全與性能上做平衡。

以上這篇php文件包含目錄配置open_basedir的使用與性能詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章主要介紹了PHP定義字符串的四種方式,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
下面小編就為大家分享一篇php 替換文章中的圖片路徑,下載圖片到本地服務器的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇PHP給源代碼加密的幾種方法匯總(推薦),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇php打開本地exe程序,js打開本地exe應用程序,并傳遞相關參數方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
這篇文章主要介紹了PHP類的反射來實現依賴注入過程以及相關知識點分享,對此有興趣的朋友跟著小編學習下吧。
php遍歷一個文件夾內的所有文件和文件夾,并刪除所有文件夾和子文件夾下的所有文件的代碼,通過遞歸方式實現達到清空一個目錄的效果。本文給大家分享實例代碼,需要的朋友參考
主站蜘蛛池模板: 午夜午夜精品一区二区三区文 | 欧美一区二区三区视频 | 国产精品高潮呻吟久久av野狼 | 日韩免费一区二区 | 亚洲免费观看视频网站 | 波多野结衣二区 | 国产日韩欧美91 | 亚洲成网站 | 亚洲精品久久久久avwww潮水 | 久久av一区二区三区 | 国产伦精品一区二区三区照片91 | 日本手机看片 | 久久精品久久久久久 | 欧美精品一区二区三区在线播放 | 中文字幕在线播放不卡 | 国产一区二区三区在线观看免费 | 91人人看 | 国产精品欧美精品日韩精品 | 欧美在线播放一区 | 综合精品 | 国产亚洲人成a在线v网站 | 精品日韩一区二区三区 | 91黄色片免费看 | 精品av天堂毛片久久久借种 | 午夜影院中文字幕 | 久久com| 免费av在线网站 | 国产午夜精品久久久 | 日日摸日日碰夜夜爽2015电影 | 国产高清精品一区二区三区 | 国产精品视频久久久 | 日韩一级免费电影 | 国产日韩一区二区三区 | 国产午夜精品久久久 | 日韩欧美国产一区二区 | 99精品久久久 | 日韩欧美视频 | 精品毛片 | 综合色在线 | 精品在线一区 | 国产探花在线精品一区二区 |