WebDAV Setup · 4 min read · Dec 03, 2025
Cómo Configurar WebDAV Con Lighttpd En Mandriva 2008.1
Cómo Configurar WebDAV Con Lighttpd En Mandriva 2008.1
Versión 1.0
Autor: Falko Timme
Este guía explica cómo configurar WebDAV con lighttpd en un servidor Mandriva 2008.1. WebDAV significa Autorización y Versionado Distribuido Basado en la Web y es un conjunto de extensiones al protocolo HTTP que permite a los usuarios editar archivos directamente en el servidor lighttpd, de modo que no necesitan ser descargados/subidos a través de FTP. Por supuesto, WebDAV también se puede usar para subir y descargar archivos.
¡No doy ninguna garantía de que esto funcione para ti!
1 Nota Preliminar
Estoy usando un servidor Mandriva 2008.1 con la dirección IP 192.168.0.100 aquí.
2 Instalando WebDAV
Antes de instalar cualquier paquete, debemos habilitar los repositorios main, main_updates, contrib y contrib_updates. Ve a http://easyurpmi.zarb.org/ - debería darte los comandos que necesitas ejecutar para habilitar estos repositorios. En mi caso, ejecuté
urpmi.addmedia contrib ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/release with media_info/hdlist.czurpmi.addmedia --update contrib_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/updates with media_info/hdlist.czurpmi.addmedia main ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/release with media_info/hdlist.czurpmi.addmedia --update main_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/updates with media_info/hdlist.czPuedes instalar lighttpd (si no está ya instalado), el módulo lighttpd WebDAV y el paquete apache-base (que contiene la herramienta htpasswd que necesitaremos más adelante para generar un archivo de contraseñas para el recurso compartido WebDAV) de la siguiente manera:
urpmi lighttpd lighttpd-mod_webdav lighttpd-mod_auth apache-baseSi ya tienes Apache instalado, deberías detenerlo ahora y eliminar los enlaces de inicio del sistema de Apache para que no interfiera con lighttpd (puedes ejecutar los siguientes dos comandos incluso si no sabes si tienes Apache instalado):
/etc/init.d/httpd stop
chkconfig httpd offLuego iniciamos lighttpd:
/etc/init.d/lighttpd startA continuación, abrimos /etc/lighttpd/lighttpd.conf y habilitamos/agregamos los módulos mod_alias, mod_webdav y mod_auth en la estrofa server.modules (¡es importante que mod_webdav esté listado antes que mod_auth!):
vi /etc/lighttpd/lighttpd.conf| [...] server.modules = ( # "mod_rewrite", # "mod_redirect", "mod_alias", "mod_access", # "mod_cml", # "mod_trigger_b4_dl", "mod_webdav", "mod_auth", # "mod_status", # "mod_setenv", # "mod_fastcgi", # "mod_proxy", # "mod_simple_vhost", # "mod_evhost", # "mod_userdir", # "mod_cgi", # "mod_compress", # "mod_ssi", # "mod_usertrack", # "mod_expire", # "mod_secdownload", # "mod_rrdtool", "mod_accesslog" ) [...] |
Reinicia lighttpd después:
/etc/init.d/lighttpd restart3 Creando Un Host Virtual
Ahora crearé un vhost lighttpd ( www.example.com) en el directorio /var/www/web1/web. Si ya tienes un vhost para el cual te gustaría habilitar WebDAV, debes ajustar este tutorial a tu situación.
Primero, creamos el directorio /var/www/web1/web y hacemos que el usuario y grupo de lighttpd (se llaman apache en Mandriva) sean los propietarios de ese directorio:
mkdir -p /var/www/web1/web
chown apache:apache /var/www/web1/webLuego abrimos /etc/lighttpd/lighttpd.conf y agregamos el siguiente vhost al final del archivo:
vi /etc/lighttpd/lighttpd.conf| [...] $HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" } |
Después reiniciamos lighttpd:
/etc/init.d/lighttpd restart4 Configurar El Host Virtual Para WebDAV
Ahora creamos el archivo de contraseñas WebDAV /var/www/web1/passwd.dav con el usuario test (el switch -c crea el archivo si no existe):
htpasswd -c /var/www/web1/passwd.dav testSe te pedirá que escribas una contraseña para el usuario test.
(¡Por favor, no uses el switch -c si /var/www/web1/passwd.dav ya existe porque esto recreará el archivo desde cero, lo que significa que perderás todos los usuarios en ese archivo!)
Ahora cambiamos los permisos del archivo /var/www/web1/passwd.dav para que solo root y los miembros del grupo apache puedan acceder a él:
chown root:apache /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.davAhora modificamos nuestro vhost en /etc/lighttpd/lighttpd.conf para que se vea como sigue:
vi /etc/lighttpd/lighttpd.conf| [...] $HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" alias.url = ( "/webdav" => "/var/www/web1/web" ) $HTTP["url"] =~ "^/webdav($|/)" { dir-listing.activate = "enable" webdav.activate = "enable" webdav.is-readonly = "disable" auth.backend = "htpasswd" auth.backend.htpasswd.userfile = "/var/www/web1/passwd.dav" auth.require = ( "" => ( "method" => "basic", "realm" => "webdav", "require" => "valid-user" ) ) } } |
La directiva alias.url hace (junto con $HTTP[“url”] =~ “^/webdav($|/)”) que cuando llames a /webdav, se invoque WebDAV, pero aún puedes acceder a toda la raíz del documento del vhost. Todas las demás URL de ese vhost siguen siendo HTTP “normal”.
Reinicia lighttpd después:
/etc/init.d/lighttpd restart5 Probando WebDAV
Ahora instalaremos cadaver, un cliente WebDAV de línea de comandos:
urpmi cadaverPara probar si WebDAV funciona, escribe:
cadaver http://www.example.com/webdav/Se te pedirá un nombre de usuario. Escribe test y luego la contraseña para el usuario test. Si todo va bien, deberías obtener acceso, lo que significa que WebDAV está funcionando correctamente. Escribe quit para salir de la shell de WebDAV:
[root@server1 ~]# cadaver http://www.example.com/webdav/
Authentication required for webdav on server `www.example.com':
Username: test
Password:
dav:/webdav/> quit
Connection to `www.example.com' closed.
[root@server1 ~]#6 Configurar Un Cliente Windows XP Para Conectarse Al Recurso Compartido WebDAV
Esto se describe en https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p2.
Por favor, especifica el puerto en la URL de WebDAV, por ejemplo, http://www.example.com:80 /webdav. Por alguna extraña razón, esto hace que Windows XP acepte el nombre de usuario normal (por ejemplo, test) - de lo contrario, Windows XP espera nombres de usuario NTLM (que tendrían la forma www.example.com\test).
7 Configurar Un Cliente Linux (GNOME) Para Conectarse Al Recurso Compartido WebDAV
Esto se describe en https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p3.
8 Enlaces
- WebDAV: http://www.webdav.org
- Lighttpd: http://www.lighttpd.net
- Mandriva: http://www.mandriva.com
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.