Para mayor seguridad, está activado en el PHP el Safe Mode, que impide que se puedan ejecutar comandos de shell desde PHP. Si necesita ejecutar algún comando de consola, deberá decirnos cuál para que se lo activemos.
Además, el Safe Mode impone restricciones en algunas funciones de PHP:
- dbmopen(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- dbase_open(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- filepro(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- filepro_rowcount(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- filepro_retrieve(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
li>pg_loimport(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- posix_mkfifo(): Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- putenv(): Obecede las ini-directivas safe_mode_protected_env_vars y safe_mode_allowed_env_vars. Vea también la documentación de putenv()
- move_uploaded_file(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- chdir(): Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- dl(): Esta función no está habilitada en safe-mode (modo-seguro)
- backtick operator: Esta función no está habilitada en safe-mode (modo-seguro)
- shell_exec() (equivalencia funcional de backticks): Esta función no está habilitada en safe-mode (modo-seguro)
- exec(): Ud. puede correr sólo los ejecutables que nosotros le habilitemos. Deberá enviarnos un email diciéndonos qué necesita ejecutar y para qué.
- system(): Ud. puede correr sólo los ejecutables que nosotros le habilitemos. Deberá enviarnos un email diciéndonos qué necesita ejecutar y para qué.
- passthru(): Ud. puede correr sólo los ejecutables que nosotros le habilitemos. Deberá enviarnos un email diciéndonos qué necesita ejecutar y para qué.
- popen(): Ud. puede correr sólo los ejecutables que nosotros le habilitemos. Deberá enviarnos un email diciéndonos qué necesita ejecutar y para qué.
- mkdir(): Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- rmdir(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- rename(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- unlink(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- copy(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado. (en source y target)
- chgrp(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- chown(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado.
- chmod(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Además, Ud. no puede cambiar los bits de SUID, SGID y sticky
- touch(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- symlink(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado. (Nota: sólo el target es comprobado)
- link(): Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado. (Nota: sólo el target es comprobado)
- getallheaders(): En Modo Seguro, las cabeceras que empiezan con 'authorization' (insensible a mayúsculas) no serán retornadas.
- header(): En Modo Seguro, el UID del script está agregado a la parte realm de la cabecera WWW-Authenticate si Ud. setea esta cabecera (usado por HTTP Authentication).
- highlight_file(), show_source() : Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- parse_ini_file() : Comprueba que los archivos/directorios que va a utilizar tengan el mismo propietario que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar tiene el mismo propietario que el script que está siendo ejecutado.
- mail(): Con safe mode, el quinto parámetro está desactivado.
Posiblemente esta lista tenga algún error, y probablemente esté incompleta. Puede encontrar más información en www.php.net