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ì)受到影響。
首先,以下嘗試訪問(wèn)文件系統(tǒng)的函數(shù)將會(huì)被限制,運(yùn)行服務(wù)器的用戶id,如果想要嘗試操作某個(gè)文件,必須要用戶該文件的讀取或者寫入的訪問(wèn)權(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)行過(guò)濾。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 告別AJAX實(shí)現(xiàn)無(wú)刷新提交表單2. 小技巧處理div內(nèi)容溢出3. Vue+elementUI下拉框自定義顏色選擇器方式4. css進(jìn)階學(xué)習(xí) 選擇符5. 詳解盒子端CSS動(dòng)畫性能提升6. 低版本IE正常運(yùn)行HTML5+CSS3網(wǎng)站的3種解決方案7. ASP中常用的22個(gè)FSO文件操作函數(shù)整理8. CSS hack用法案例詳解9. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)10. 使用css實(shí)現(xiàn)全兼容tooltip提示框
