| copiando archivos con PHP con SAFE MODE ON |
|
|
|
| Escrito por Administrator | |||||
| Wednesday, 26 de September de 2007 | |||||
Página 1 de 3
Mis ilustres shadowslanders, Habitualmente nos podemos encontrar que en el servidor donde tenemos alojada nuestra página web, esta configurado con el SAFE MODE activado. Normalmente esto se suele encontrar en hostings cuyo servidor esta compartido con numerosos usuarios y diferentes aplicaciones. Es decir que cada usuario tiene su home y es donde el ubicará sus páginas, pero el servidor dispone de una o más home para cada uno de sus clientes. Y que tiene que ver el SAFE MODE en todo esto ? Imaginemos un caso, imaginemos que yo dispongo de una web en un servidor compartido. Yo podría crear por ejemplo una página en PHP que se repateara el resto de directorios compartidos y fuera borrando el resto de la webs. Para evitar este problema los administradores activan el SAFE MODE. El SAFE MODE pone restricciones a determinados funciones catalogadas de peligrosas, por ejemplo mkdir(), rmdir(), rename(), unlink(), copy(), chown(), chmod(), unlink(), etc... Estas restricciones consisten, casi todas en verificar si el UID del script que esta siendo ejecutado coincide con el fichero o directorio a operar. Vale y cual es el problema ? El problema es que normalemente el apache está siendo ejecutado como usuario apache, el cual ha sido definido httpd.conf y en este tipo de nuestras páginas tendrán como propietario a nuestro usuario. Con lo cual imaginemos que tenemos un fichero del cual somos propietarios, y un script en php que quiere copiar ese fichero a otra ubicación de nuestra web , como el script php es ejecutado por el usuario apache y el fichero a copiar es de nuestra propiedad no permitira hacer esta operación. Y aquí os presento una posible solución para poder copiar ficheros desde php, saltandonos la seguridad del SAFE MODE. Espero que os guste, El Capi.
Bueno el truco de saltarse la seguridad del SAFE MODE, consiste en realizar las operaciones con ficheros y directorios via FTP. Es decir desde nuestro script php hacemos una conexión via FTP al mismo servidor donde tenemos nuestro script php. Y una vez conectados haremos las operaciones que tengamos que hacer con los ficheros y directorios. function FtpMkdir($path, $newDir) Una vez dentro del directorio creamos el directorio con la función ftp_mkdir(). Finalmente si el directorio ha sido creado correctamente le ponemos los permisos deseados: |
|||||
| Modificado el ( Thursday, 04 de October de 2007 ) | |||||
| Siguiente > |
|---|








