關閉方法:在php.ini設定文件,尋找“safe_mode =”,將其設定為“safe_mode = Off”;然後重啟php,或重新啟動整個環境即可關閉php safe_mode模式(安全模式) 。
關閉php的safe_mode模式的方法
部分環境是開啟安全模式(safe_mode),這會導致程式許多php內建函數沒法使用,系統將處於癱瘓狀態,建議關閉它。
在php.ini檔案裡面設定safe_mode = Off
,然後重新啟動php,或重新啟動整個環境。 【相關教學推薦:《PHP教學》】
#如圖:
拓展資料
什麼是PHP安全模式:safe_mode
簡單來說,PHP安全模式就是以安全模式運作php。
php的安全模式提供一個基本安全的共享環境,在一個有多個使用者帳戶存在的php開放的web伺服器上。當一個web伺服器上運行的php開啟了安全模式,那麼一些函數將被完全的禁止,並且會限制一些可用的功能。
在安全模式下,一些嘗試存取檔案系統的函數功能將被限制。執行web伺服器使用者id,如果想要操作某個文件,則必須擁有該文件讀取或寫入的存取權限,而實現這個限制功能對於php來說是沒有問題的。
在安全模式開啟的時候,嘗試讀取或寫入一個本機檔案的時候,php將檢查目前存取使用者是否是該目標檔案的擁有者。如果不是所有者,則該操作會被禁止。
(寫入權限:在較低層級的文件存取權限下,可能會允許讀取或寫入系統作業系統的文件,透過php的安全模式實現了防止你操作另外一個使用者文件的操作。當然,一個網頁伺服器可能能夠存取一個具有全域寫入權限的任意檔案。)
當安全模式開啟的時候,以下函數清單的功能將會受到限制:
chdir, move_uploaded_file, chgrp, parse_ini_file, chown, rmdir, copy, rename, fopen, require, highlight_file, show_source, include, symlink, link, touch, mkdir, unlink
#.一些php擴充中的函數也會受到影響。 (載入模組:在安全模式下dl函數將被禁止,如果要載入擴充的話,只能修改php.ini中的擴充選項,在php啟動的時候載入)
在php安全模式開啟的時候,需要執行系統程式的時候,必須是在safe_mode_exec_dir選項指定目錄的程序,否則執行將失敗。即使允許執行,那麼也會自動的傳遞給escapeshellcmd函數進行過濾。
以下執行指令的函數清單將會受到影響:
exec,shell_exec,passthru,system,popen
另外,背部標記運算元(`)也會被關閉。
當運行在安全模式下,雖然不會造成錯誤,但putenv函數將無效。同樣的,其他一些嘗試改變php環境變數的函數set_time_limit, set_include_path也將被忽略。
推薦學習:
PHP程式設計從入門到精通以上是如何關閉php的safe_mode模式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!