Last 5.3 release ever available: PHP 5.3.29 - 5.3 now EOL

Funzioni limitate/disabilitate dalla modalità sicura (safe-mode)

Questo è un elenco probabilmente ancora incompleto e forse non esatto delle funzioni limitate dalla modalità sicura.

Funzioni limitate dalla modalità sicura
Funzioni Limitazioni
dbmopen() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
dbase_open() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
filepro() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
filepro_rowcount() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
filepro_retrieve() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
ifx_* restrizioni sql_safe_mode, (!= safe mode)
ingres_*() restrizioni sql_safe_mode, (!= safe mode)
mysql_*() restrizioni sql_safe_mode, (!= safe mode)
pg_lo_import() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
posix_mkfifo() Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
putenv() Obbedisce le direttive del file ini safe_mode_protected_env_vars e safe_mode_allowed_env_vars. Vedere la documentazione relativa on putenv()
move_uploaded_file() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
chdir() Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
dl() Questa funzione è disabilitata nella modalitàsafe-mode
operatore backtick Questa funzione è disabilitata nella modalitàsafe-mode
shell_exec() (equivalente funzionale ai backtick) Questa funzione è disabilitata nella modalitàsafe-mode
exec() Si possono avviare solo i programmi all'interno di safe_mode_exec_dir. Per ragioni pratiche non è al momento possibile utilizzare il .. nel percorso dell'eseguibile. escapeshellcmd() viene eseguita sugli argomenti di questa funzione.
system() Si possono avviare solo i programmi all'interno di safe_mode_exec_dir. Per ragioni pratiche non è al momento possibile utilizzare il .. nel percorso dell'eseguibile. escapeshellcmd() viene eseguita sugli argomenti di questa funzione.
passthru() Si possono avviare solo i programmi all'interno di safe_mode_exec_dir. Per ragioni pratiche non è al momento possibile utilizzare il .. nel percorso dell'eseguibile. escapeshellcmd() viene eseguita sugli argomenti di questa funzione.
popen() Si possono avviare solo i programmi all'interno di safe_mode_exec_dir. Per ragioni pratiche non è al momento possibile utilizzare il .. nel percorso dell'eseguibile. escapeshellcmd() viene eseguita sugli argomenti di questa funzione.
fopen() Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
mkdir() Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
rmdir() Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
rename() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
unlink() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
copy() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione. (on source and target)
chgrp() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
chown() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione.
chmod() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Inoltre, non si possono impostare SUID, SGID e sticky bits
touch() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione.
symlink() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione. (nota: solo il file di destinazione è verificato)
link() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione. (nota: solo il file di destinazione è verificato)
apache_request_headers() In safe mode, gli header che cominciano con authorization (case-insensitive) non saranno restituiti.
header() Quando si è in modalità sicura, l'uid dello script viene aggiunto al realm dell'header WWW-Authenticate nel caso questo header venga impostato (usato per l'autenticazione HTTP).
varabili PHP_AUTH In modalità sicura, le variabili PHP_AUTH_USER, PHP_AUTH_PW e AUTH_TYPE non sono disponibili in $_SERVER. Si può comunque usare REMOTE_USER per conoscere l'utilizzatore. (nota: solo dal PHP 4.3.0)
highlight_file(), show_source() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione. (nota: solo dal PHP 4.2.1)
parse_ini_file() Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione. (nota: solo dal PHP 4.2.1)
set_time_limit() Non ha effetto quando PHP è eseguito in modalità sicura.
max_execution_time Non ha effetto quando PHP è eseguito in modalità sicura.
mail() In safe mode, il quinto parametro è disabilitato. (nota: solo dal PHP 4.2.3)
session_start() Il proprietario dello script deve esserlo anche della cartella session.save_path se viene usato il session.save_handler di default, files.
tutte le funzioni di filesystem e stream. Controlla che i file o le directory su cui si sta lavorando, abbiano lo stesso UID dello script che è in esecuzione. Controlla che la directory su cui si sta lavorando, abbia lo stesso UID dello script che è in esecuzione. (vedere l'opzione safe_mode_include_dir in php.ini.

add a note add a note

User Contributed Notes 2 notes

up
1
tschmieder at bitworks dot de
6 years ago
refers to the previuos posting of

bananarama
15-May-2006 10:11

"all file-handling and -management functions are restricted, just in case someones wondering why they're not listed here.
a script can run these functions on files without errors, if the files were created (are owned) by the same UID, the script was created (is owned) by."

.... or if the directory, in which the file is located, has the same UID as the script, which tries to use a file in that directory...
up
0
Jan
8 years ago
It seems that glob and file_exists functions are also restricted in safe-mode.
To Top