WEBDAV on NGINX

WEBDAV on NGINX

Pour utiliser webdav via nginx il faut installer le package nginx-full pas nginx simplement sinon vous n’aurez pas les extension qu’il faut.

root@nas:~# apt update && apt install nginx-full

ensuite nous allons simplement modifier le fichier de host par défaut ou un autre si vous en avez créé un pour ajouter les confs webdav.

root@nas:~# cat /etc/nginx/sites-enabled/default 
server {
	listen 80 default_server;
	listen [::]:80 default_server;

	root /var/www/html;

	# Add index.php to the list if you are using PHP
	index index.html index.htm index.nginx-debian.html;

	server_name _;

	location / {
		# First attempt to serve request as file, then
		# as directory, then fall back to displaying a 404.
		try_files $uri $uri/ =404;
	}

        location ^~ /webdav {
          auth_basic          "realm_name";
          auth_basic_user_file /var/www/.auth.allow;
          alias /var/www/html;
          autoindex on;
          autoindex_exact_size on;
          autoindex_localtime on;
          index file.html;
          dav_methods PUT DELETE MKCOL COPY MOVE;
          dav_ext_methods PROPFIND OPTIONS;
          dav_access user:rw;
          client_body_temp_path /var/www/tmp;
          client_max_body_size 0;
          create_full_put_path on;

        } 
}

Il faut maintenant créer le fichier qui contient les identifiants (/var/www/.auth.allow). Dans les commandes suivantes vous remplacé user_name par votre login et vous entrée le mot de passe lorsqu’il vous sera demandé.

root@nas:~# echo -n 'user_name:' | tee -a /var/www/.auth.allow 
root@nas:~# openssl passwd -apr1 | tee -a /var/www/.auth.allow
root@nas:~# chown root:www-data /var/www/.auth.allow && chmod 640 /var/www/.auth.allow 
root@nas:~# cat /var/www/.auth.allow
user_name:$apr1$9WppBYUH$L4S3jfDRXqfcAJ1mD93KD/

Nous allons maintenant activer la compression pour gagner en bande passante.

root@nas:~# sed -i '/gzip_/ s/#\ //g' /etc/nginx/nginx.conf
root@nas:~# nginx -t && systemctl restart nginx

Vous pouvez maintenant depuis un autre ordinateur accéder à votre partage webdav (/var/www/html) en utilisant le lien (http://votre_serveur/webdav)

joel

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.