PHP safe_mode開啟對(duì)于PHP系統(tǒng)函數(shù)有什么影響
safe_mode是提供一個(gè)基本安全的共享環(huán)境。
在一個(gè)多用戶共享的phpweb服務(wù)器上,當(dāng)這臺(tái)服務(wù)器開啟了safe_mode模式,有以下函數(shù)將會(huì)受到影響。
首先,以下嘗試訪問文件系統(tǒng)的函數(shù)將會(huì)被限制,運(yùn)行服務(wù)器的用戶id,如果想要嘗試操作某個(gè)文件,必須要用戶該文件的讀取或者寫入的訪問權(quán)限。
因此,在safe_mode打開的情況下,下列函數(shù)將會(huì)收到限制:
ckdir, move_uploaded_file, chgrp, parse_ini_file, chown,rmdir, copy, rename, fopen, require, highlight_file, show_source, include, symlink, link, touch, mkdir, unlink以上都是跟操作文件系統(tǒng)有關(guān)的函數(shù)。
除此之外,一些php擴(kuò)展的函數(shù)也會(huì)受到限制,不能在程序里面直接加載擴(kuò)展,只能到php.ini里加載,而且php如果需要執(zhí)行操作系統(tǒng)的程序時(shí),必須在safe_mode_exec_dir中指定程序的路徑,否則執(zhí)行將失敗。
此外還有
exec, shell_exec, pasathru, system, popen等函數(shù)會(huì)收到限制同樣的,一些php擴(kuò)展中的函數(shù)也將會(huì)受到影響。(加載模塊:在安全模式下dl函數(shù)將被禁止,如果要加載擴(kuò)展的話,只能修改php.ini中的擴(kuò)展選項(xiàng),在php啟動(dòng)的時(shí)候加載)。
在php安全模式打開的時(shí)候,需要執(zhí)行系統(tǒng)程序的時(shí)候,必須是在safe_mode_exec_dir選項(xiàng)指定目錄的程序,否則執(zhí)行將失敗。即使允許執(zhí)行,那么也會(huì)自動(dòng)的傳遞給escapeshellcmd函數(shù)進(jìn)行過濾。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 詳解CSS開發(fā)過程中的20個(gè)快速提升技巧2. asp讀取xml文件和記數(shù)3. XML 取得元素的字符數(shù)據(jù)4. ASP+ajax實(shí)現(xiàn)頂一下、踩一下同支持與反對(duì)的實(shí)現(xiàn)代碼5. .Net core 的熱插拔機(jī)制的深入探索及卸載問題求救指南6. 一篇文章帶你了解JavaScript-語句7. 常見 PHP ORM 框架與簡(jiǎn)單代碼實(shí)現(xiàn)8. 如何使用ASP.NET Core 配置文件9. PHP下載CSS文件中的圖片10. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟
