Operaciones via ftp en php

Un gran problema de trabajar con servidores compartidos es que te capan un montón de cosas. Entre ellas la grabación de ficheros subidos desde un formulario via web. Nunca he entendido esto, supongo que será para cubrirse las espaldas y no tener problemas si algún desalmado se hace con tu usuario y trastea en tu cuenta.

Por un lado me parece bien, pero para la gente que se tiene que dejar los cuernos en buscar alternativas a la subida normal de archivos me parece una guarrada.

En fin, el caso es que encontré que para cualquier operación en el servidor que implique permisos de administración (crear un fichero, crear un directorio, cambiar permisos, etc…) normalmente el usuario destinado a las operaciones de ftp suele tener dichos permisos con lo que simplemente con abrir una conexión con el usuario de ftp nos servirá.

Por ejemplo, para crear un directorio se haría de esta forma. (Notese que yo tengo los datos del usuario ftp en un fichero aparte con defines con lo que uso las variables _FTP_X para iniciar la conexión con el servidor)

static public function mkdir_ftp($path,$mod)
{
$path = _FTP_ROOT_.$path;

$ftp_user_name = _FTP_LOGIN_;
$ftp_user_pass = _FTP_PASS_;
$ftp_root = _FTP_ROOT_;
$ftp_server = _FTP_SERVER_;

// conexión básica
$conn_id = ftp_connect($ftp_server);

// login con nombre de usuario y password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
$success=false;
// intentamos crear el directorio $path
if (ftp_mkdir($conn_id, $path)) $success=true;

//Cerramos la conexión
ftp_close($conn_id);

return $success;
}

Escuchando el Mixtape de Kayo

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *