Safe_mode è una direttiva del php.ini, che riguarda la sicurezza del php, ovvero impone sensibili restrizioni qualora venga abilitata.
Qualora impostassimo il safe_mode su ON avremo difatti le seguenti restrizioni:
* Php verificherà sempre lo UID ("User ID") del file in esecuzione ed opererà simulando tale utente (wrapping);
* Gran parte delle operazioni sui files come fopen(), copy() e readfile() (vedi manuale per una lista completa) non potranno più coinvolgere file e directory appartenenti ad utenti diversi dal proprietario dello script in esecuzione;
* Anche include() e require() risentono della restrizione al punto 2, a meno che non coinvolgano file inseriti nella "safe_mode_include_dir" indicata;
* Qualsiasi chiamata di sistema (vedi exec(), system(), passtru()) può riguardare esclusivamente gli eseguibili inseriti nella "safe_mode_exec_dir" indicata;
* Funzioni come set_time_limit(), dl(), shell_exec() e così pure l'operatore backtick (``) vengono totalmente disabiltate.

Molti software evoluti, scritti in php, pretendono questa direttiva settata su OFF, perciò bisogna fare bene attenzione all'hosting da scegliere.
Per abilitare safe_mode è possible intervenire direttamente sul php.ini, qualora il server sia di vostra proprietà:

safe_mode = On
safe_mode_include_dir = /usr/local/php/safe_include
safe_mode_exec_dir = /usr/local/php/safe_exec
safe_mode_gid = Off
Terminologia PHP-MySQL
Php GTa.jpg
Domande?
Accedi alla home della sezione Php e Mysql o alla Home del Forum GT

  • Questa pagina è stata modificata per l'ultima volta il 21 feb 2009 alle 11:50.
  • Questa pagina è stata letta 1 309 volte.