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)
Laisser un commentaire