// Engineering Log
Protocolos de transferencia de archivos: Parte 6 — WebDAV
Publicado el 22.09.2026
WebDAV (Web Distributed Authoring and Versioning) — una extensión del protocolo HTTP que convierte un servidor web en un almacenamiento en red: los archivos no solo se pueden descargar, sino también subir, renombrar, mover y bloquear durante la edición. La principal ventaja de WebDAV es que funciona sobre HTTPS normal, por lo que atraviesa cortafuegos y proxies donde SMB o NFS están bloqueados.
Cómo está diseñado el protocolo
A los métodos estándar de HTTP (GET, PUT, DELETE) WebDAV añade los suyos:
PROPFIND— obtener propiedades de un archivo o la lista de contenido de un directorio;PROPPATCH— modificar propiedades;MKCOL— crear un directorio (en términos de WebDAV — una colección);COPYyMOVE— copiar y mover;LOCKyUNLOCK— bloquear un archivo para que dos usuarios no sobrescriban los cambios del otro.
Un cliente que abre WebDAV como unidad de red envía continuamente PROPFIND para mostrar el contenido de los directorios, y LOCK cuando una aplicación de oficina abre un documento en modo escritura. Por eso un servidor que entiende solo parte de los métodos no funcionará con la mayoría de clientes.
Servidor en Apache
En Apache WebDAV se implementa con los módulos mod_dav y mod_dav_fs. Ejemplo de la documentación de Apache:
DavLockDB "/usr/local/apache2/var/DavLock"
<Directory "/usr/local/apache2/htdocs/foo">
Dav On
AuthType Basic
AuthName DAV
AuthUserFile "user.passwd"
<RequireAny>
Require method GET POST OPTIONS
Require user admin
</RequireAny>
</Directory>DavLockDB establece el archivo de la base de bloqueos — el directorio debe ser escribible por el usuario de Apache. La documentación advierte claramente: no habilite WebDAV hasta que el servidor esté protegido, de lo contrario cualquiera podrá colocar archivos. Las contraseñas en la autenticación básica deben enviarse solo por HTTPS. Para protegerse contra sobrecarga sirven LimitXMLRequestBody y DavDepthInfinity, que está desactivado por defecto.
Por qué nginx no es la mejor opción
El módulo ngx_http_dav_module en nginx no se compila por defecto y solo soporta PUT, DELETE, MKCOL, COPY y MOVE. La documentación de nginx señala que los clientes que necesiten otros métodos WebDAV no funcionarán con él. PROPFIND y LOCK los añade un módulo de terceros nginx-dav-ext-module, pero eso requiere una compilación por separado. Para un servidor WebDAV completo es más sencillo usar Apache o una aplicación ya preparada.
Nextcloud y soluciones ya hechas
En la práctica WebDAV se obtiene con más frecuencia junto con una nube de archivos. Nextcloud expone el almacenamiento de cada usuario vía WebDAV, por lo que se puede conectar con un cliente normal o como una unidad de red, y Nextcloud se encarga de los permisos, carpetas compartidas y el registro de actividad. Más detalles — en el artículo «Nube propia: Parte 1 — Almacenamiento de archivos en Nextcloud».
Clientes
- macOS — Finder → Conectar al servidor, dirección del tipo
https://files.example.ru/remote.php/dav/files/user/. - Linux — gestores de archivos GNOME y KDE (protocolos
davs://),davfs2para montar en el sistema. - rclone — puede trabajar con WebDAV como con cualquier otro almacenamiento: sincronizar directorios, montar, copiar a S3 y viceversa. Es útil para copias de seguridad desde un almacenamiento WebDAV.
- Windows — el cliente integrado (servicio WebClient, «Conectar unidad de red»). Microsoft anunció en noviembre de 2023 que lo declara obsoleto: el servicio no se inicia por defecto y ya no se desarrolla. En Windows es más fiable una aplicación de terceros (por ejemplo, el cliente de Nextcloud) o rclone.
WebDAV, S3 o SMB
- WebDAV — cuando se necesita acceso a archivos a través de Internet por HTTPS, con bloqueos y funcionamiento «como una carpeta», sin VPN.
- S3 — para copias de seguridad, archivos de archivo y archivos multimedia que se escriben completos; el acceso programático es más cómodo que «unidad de red».
- SMB o NFS — para trabajar en una red local, donde la velocidad y muchos archivos pequeños son importantes.
Errores típicos
- WebDAV por HTTP sin TLS. Contraseñas y archivos viajan en texto plano.
- Soporte incompleto de métodos. El servidor acepta la subida pero no responde a
PROPFINDoLOCK— los clientes no muestran los directorios o no abren los documentos en modo escritura. - Archivos grandes a través de un proxy inverso. Los límites de tamaño de petición y timeouts del proxy interrumpen la subida de archivos grandes; hay que aumentarlos para la URL de WebDAV.
- Depender del cliente de Windows. El servicio WebClient obsoleto se comporta de forma inestable con archivos grandes y certificados autofirmados; es mejor elegir otro cliente desde el principio.
// Contact
¿Necesitas ayuda?
Escríbeme y te ayudaré a resolver el problema
Respondo en un día laborable (03:00-13:00 GMT)
Или оставьте заявку здесь:
// Related