WebDAV Lighttpd · 4 min read · Dec 03, 2025

Come configurare WebDAV con Lighttpd su Mandriva 2008.1

Come configurare WebDAV con Lighttpd su Mandriva 2008.1

Versione 1.0
Autore: Falko Timme

Questa guida spiega come configurare WebDAV con lighttpd su un server Mandriva 2008.1. WebDAV sta per Web-based Distributed Authoring and Versioning ed è un insieme di estensioni al protocollo HTTP che consentono agli utenti di modificare direttamente i file sul server lighttpd in modo che non debbano essere scaricati/caricati tramite FTP. Naturalmente, WebDAV può anche essere utilizzato per caricare e scaricare file.

Non fornisco alcuna garanzia che questo funzionerà per te!

1 Nota preliminare

Sto usando un server Mandriva 2008.1 con l’indirizzo IP 192.168.0.100 qui.

2 Installazione di WebDAV

Prima di installare qualsiasi pacchetto, dobbiamo abilitare i repository main, main_updates, contrib e contrib_updates. Vai su http://easyurpmi.zarb.org/ - dovrebbe darti i comandi che devi eseguire per abilitare questi repository. Nel mio caso, ho eseguito

urpmi.addmedia contrib ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/release with media_info/hdlist.cz
urpmi.addmedia --update contrib_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/updates with media_info/hdlist.cz
urpmi.addmedia main ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/release with media_info/hdlist.cz
urpmi.addmedia --update main_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/updates with media_info/hdlist.cz

Puoi installare lighttpd (se non è già installato), il modulo lighttpd WebDAV e il pacchetto apache-base (che contiene lo strumento htpasswd di cui avremo bisogno più avanti per generare un file di password per la condivisione WebDAV) come segue:

urpmi lighttpd lighttpd-mod_webdav lighttpd-mod_auth apache-base

Se hai già Apache installato, dovresti fermarlo ora e rimuovere i collegamenti di avvio del sistema di Apache in modo che non possa interferire con lighttpd (puoi eseguire i seguenti due comandi anche se non sai se hai Apache installato):

/etc/init.d/httpd stop  
chkconfig httpd off

Poi avviamo lighttpd:

/etc/init.d/lighttpd start

Successivamente, apriamo /etc/lighttpd/lighttpd.conf e abilitiamo/aggiungiamo i moduli mod_alias, mod_webdav e mod_auth nella sezione server.modules (è importante che mod_webdav sia elencato prima di 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" ) [...] |

Riavvia lighttpd successivamente:

/etc/init.d/lighttpd restart

3 Creazione di un Virtual Host

Ora creerò un vhost lighttpd ( www.example.com) nella directory /var/www/web1/web. Se hai già un vhost per il quale desideri abilitare WebDAV, devi adattare questo tutorial alla tua situazione.

Prima, creiamo la directory /var/www/web1/web e rendiamo l’utente e il gruppo lighttpd (si chiamano apache su Mandriva!) i proprietari di quella directory:

mkdir -p /var/www/web1/web  
chown apache:apache /var/www/web1/web

Poi apriamo /etc/lighttpd/lighttpd.conf e aggiungiamo il seguente vhost alla fine del file:

vi /etc/lighttpd/lighttpd.conf

| [...] $HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" } |

Dopo riavviamo lighttpd:

/etc/init.d/lighttpd restart

4 Configurare il Virtual Host per WebDAV

Ora creiamo il file di password WebDAV /var/www/web1/passwd.dav con l’utente test (l’opzione -c crea il file se non esiste):

htpasswd -c /var/www/web1/passwd.dav test

Ti verrà chiesto di digitare una password per l’utente test.

(Per favore non usare l’opzione -c se /var/www/web1/passwd.dav esiste già perché questo ricreerà il file da zero, il che significa che perderai tutti gli utenti in quel file!)

Ora cambiamo i permessi del file /var/www/web1/passwd.dav in modo che solo root e i membri del gruppo apache possano accedervi:

chown root:apache /var/www/web1/passwd.dav  
chmod 640 /var/www/web1/passwd.dav

Ora modifichiamo il nostro vhost in /etc/lighttpd/lighttpd.conf in modo che appaia come segue:

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 direttiva alias.url fa sì che (insieme a $HTTP[“url”] =~ “^/webdav($|/)”) quando chiami /webdav, WebDAV venga invocato, ma puoi comunque accedere all’intera radice del documento del vhost. Tutti gli altri URL di quel vhost sono ancora “normali” HTTP.

Riavvia lighttpd successivamente:

/etc/init.d/lighttpd restart

5 Testare WebDAV

Ora installeremo cadaver, un client WebDAV da riga di comando:

urpmi cadaver

Per testare se WebDAV funziona, digita:

cadaver http://www.example.com/webdav/

Dovresti essere invitato a inserire un nome utente. Digita test e poi la password per l’utente test. Se tutto va bene, dovresti ottenere accesso, il che significa che WebDAV funziona correttamente. Digita quit per uscire dalla shell WebDAV:

[root@server1 ~]# cadaver http://www.example.com/webdav/  
Autenticazione richiesta per webdav sul server `www.example.com`:  
Nome utente: test  
Password:  
dav:/webdav/> quit  
Connessione a `www.example.com' chiusa.  
[root@server1 ~]#

6 Configurare un client Windows XP per connettersi alla condivisione WebDAV

Questo è descritto su https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p2.

Si prega di specificare la porta nell’URL WebDAV, ad esempio http://www.example.com:80 /webdav. Per qualche strano motivo questo fa sì che Windows XP accetti il normale nome utente (ad esempio test) - altrimenti Windows XP si aspetta nomi utente NTLM (che avrebbero la forma www.example.com\test).

7 Configurare un client Linux (GNOME) per connettersi alla condivisione WebDAV

Questo è descritto su https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p3.

8 Link

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.