Attivare la gestione di files via WebDav su un sito Apache

From RVM Wiki
Jump to navigation Jump to search
  • Si vuole dare la possibilità di gestire i files su un sito web tramite WebDav con autenticazione, lasciando visualizzare il sito senza necessità di autenticarsi.
  • Abilitare il modulo DAV
sudo a2enmod dav dav_fs
  • Abilitare l'autenticazione digest, necessaria per accedere da Windows Seven (se si usa l'autenticazione basic, funziona solo su https):
sudo a2enmod auth_digest
  • Dichiarare le direttive necessarie:
<VirtualHost *:80>
	DocumentRoot "/var/www/mywebsite/html"
    #...  
	<Location />
		Dav On

		# Auth type digest for Windows Seven Compatibility
		AuthType        	Digest
		AuthName        	"Gestione Contenuti"

		AuthUserFile		/var/www/mywebsite/data/.htpasswd
		AuthDigestDomain	/ http://www.example.com/
		AuthDigestProvider	file

		# Write access for authenticated user via DAV
		<LimitExcept GET >
			Require valid-user
		</LimitExcept>
	</Location>			
	# ...
</VirtualHost>

  • Creare il file contenente le credenziali:
sudo htdigest /var/www/mywebsite/data/.htpasswd 'Gestione Contenuti' contenuti
  • Impostare le permission:
sudo chown -R root:www-data /var/www/mywebsite/html
sudo chmod g+w -R /var/www/mywebsite/html
  • Riavviare Apache
  • Provare ad accedere con un browser: non richiede l'autenticazione
  • Provare ad accedere con un client WebDav: deve chiedere l'autenticazione
  • Nel caso non si riuscisse a cancellare il file, e si ricevesse un errore HTTP 423 Locked, provare a creare nella webroot la directory scrivibile da www-data:
.DAV

Riferimenti