php 為什麼從 5 4 開始移除了 safe mode

時間 2021-06-07 19:51:12

1樓:eechen

safe_mode 將檢查當前指令碼的擁有者是否和被操作的檔案的擁有者相同.

相同則允許操作,不同則拒絕操作.

開啟安全模式同樣會降低PHP的執行效率.

安全模式下會禁用掉部分函式,如shell_exec()等.

PHP從5.4開始移除了安全模式(safe_mode)這個特性.

運維人員可以在php.ini配置open_basedir來限制乙個虛擬主機站點能夠訪問的目錄.

open_basedir 將PHP所能開啟的檔案限制在指定的目錄樹,包括檔案本身.

開啟 open_basedir 限制會損失一些效能,因為當乙個指令碼試圖開啟乙個檔案時,該檔案的位置將被檢查.

當檔案在指定的目錄樹之外時 PHP 將拒絕開啟它.

但要注意,open_basedir並不能限制PHP呼叫的系統命令操作的目錄:

<?php

echo ''.shell_exec('cat /etc/passwd').''; // 成功讀取檔案

file_get_contents('/etc/passwd'); // 讀取檔案失敗,返回警告 file_get_contents(): open_basedir restriction in effect. File(/etc/passwd) is not within the allowed path(s).

?>

所以,你可以考慮把shell_exec之類函式禁用掉:

disable_functions = shell_exec

魯迅的文章為什麼漸漸從課本裡移除了呢?

第二次世界大戰因為希特拉的人種論,汙衊各種人種低劣 愚昧 險惡 吃人什麼的,產生了嚴重災難。所以戰後,聯合國規定 人種不是價值體系,嚴禁對人種實行各種形式的價值判斷。所以,所以,說自己國家的人種是愚民,吃人,也不可以。 蘭仙森 魯迅先生的文字一針見血,對人性有很深的見解。但他針對的是那個國將不國,民...

為什麼dota2 移除了窮鬼盾?

別沉默我 有一天,面8,mc雷子,輪輪在一起開黑。Mc雷子 這局龍騎我準備出個狂戰。輪輪 你現在打什麼c都狂戰。面8 怎麼現在大哥狂戰這麼多啊 雷子 原來3號位出個窮鬼,隨便騎大哥臉上拉屎,一點辦法的都沒有。所以大哥前期劣勢,中期趕緊補打架裝。現在沒有窮鬼了,大哥前期能打錢,12分鐘假腿狂戰,20多...

為什麼the shy從S8開始一直維持乙個敢打敢死的狀態,但只有在他連敗以後才這麼多人來追罵呢?

冬日的旅行學家 theshy沒變,ig變了。shy哥一出道就是這樣的,不是傳統上單 edg式大樹 s8能贏很多時候是因為每個人都往前衝,死也要打輸出,阿水經常暴斃就是這樣來的,死都要拉扯一下空間給隊友收割,但是現在puff不是弱的問題,是不適合ig,puff比阿水缺了一種最重要的特質,打團時候對機會...