Entradas

Mostrando las entradas etiquetadas como ftp

El modo pasivo de FTP en PHP

Antes de cualquier explicación debemos saber las diferencias entre el modo activo y el modo pasivo en FTP. Podemos decir, resumiendo mucho, en modo pasivo las conexiones son siempre abiertas por el pc cliente , mientras que en modo activo se abren por el que envía los datos, el servidor si se trata de bajar archivos o información al pc local, el cliente si se trata de subir archivos al servidor. Tendiendo lo anterior en cuenta en el modo activo se abre una conexión para datos desde el servidor a la maquina cliente, esto es, una conexión desde fuera hacia dentro; si la maquina cliente está protegida por un firewall, este filtra o bloquea la conexión entrante al serle un proceso desconocido. En modo pasivo es el cliente el que inicia ambas conexiones, de control y de datos, con lo cual el firewall no tiene ninguna conexión entrante que filtrar. Por este motivo la razón de que algunas funciones de PHP nos funcionen en un servidor u otro con el mismo código no depende de la versión inst...

Eliminando directorios con LFTP

Imagen
Continuando el manual de opciones del LFTP os dejo la sintaxis completa para eliminar directorios de manera recursiva incluyendo archivos ocultos . La sintaxis para eliminar directorios de manera recursiva es: rm –r /directorio/directorio/directorio_a_borrar Pero si el directorio a borrar tuviese archivos ocultos tendríamos un error del tipo: rm: Access failed: 550 dirname: Directory not empty , por ello debemos incluir set ftp:list-options –a. Uniéndolo todo sería: lftp -c open ftp://user:passwd@host -e "set ftp:list-options -a; rm -r /directorio/directorio/directorio_a_borrar" & El símbolo final es para ejecutar el comando en segundo plano. Es totalmente opcional.

Opciones del LFTP

Unos de los gestores FTP más importantes de Linux es el LFTP, muy ligero y muy versátil y en las últimas versiones han mejorado muchísimo las opciones. He tenido que trabajar con el en un par de proyectos y aquí os dejo algunos comandos y opciones muy interesantes. Para crear un directorio solo si este no existe tenemos la opción mkdir –p /directorio. Tened en cuenta que si en la url del directorio hay subdirectorios, estos serán creados en caso de no existir. Para subir el contenido de un directorio entero tenemos la opción mirror, en la mayoría de artículos por internet utilizan esta opción para copias de seguridad con lo cual parecería que solo se pueda ejecutar este comando para sincronizar carpetas, lo cual no es el caso, por ejemplo si tienes las carpetas orígenes A, B, C y la de destino D, perfectamente puedes hacer esto: mirror –R A D mirror –R B D mirror –R C D Lo bueno de esto es que si volvemos a ejecutar uno de estos comandos solo se subirán los archivos nuevos o modif...