Добрый день!
Поднял вебдав сервер на centos использую nginx с расширенным dav модулем
https://github.com/arut/nginx-dav-ext-module.
Конфиг nginx следующий:
server {
listen 80;
server_name x.x.x.x.;
access_log /var/log/nginx/webdav_access.log main;
location / {
autoindex on;
root /davdir;
client_max_body_size 0;
client_body_temp_path /temp_davdir 1 2;
dav_methods PUT MKCOL COPY MOVE DELETE;
dav_ext_methods PROPFIND OPTIONS;
create_full_put_path on;
charset utf-8;
dav_access user:rw group:rw all:rw;
}
}
Успешно смонтировал дав каталог на дургом сервере с centos командой:
mount -t davfs
x.x.x.x /mnt/davdir/ -o rw
Все работает без проблем.
Кроме этого появилась необходимость использовать dav каталог на windows 2012 r2. Подключил dav каталог на сетевой диск. Файлы на диске видны и их можно скачать. Но положить файл из винды в дав каталог я не могу. Когда копирую из винды в дав каталог файл, то получаю сообщение что такой файл уже есть (и так с любыми файлами). При этом если нажать "копировать с заменой" то винда очень долго думает, а потом выдает "Имена файлов слишком длинны для помещения в эту целевую папку. Попробуйте использовать более короткое имя файла или расположение с более коротким путем."
При этом в лога nginx валяться следующие сообщения
- [10/Jul/2015:18:43:21 +0300] "PROPFIND /desktop.ini HTTP/1.1" 207 "-" 258 "-" "Microsoft-WebDAV-Mini
Redir/6.3.9600" "-" 0.000 "-" NGINX-CACHE-- "-"
1 - [10/Jul/2015:18:43:21 +0300] "GET /desktop.ini HTTP/1.1" 404 "text/html" 162 "-" "Microsoft-WebDAV-M
iniRedir/6.3.9600" "-" 0.000 "-" NGINX-CACHE-- "-"
- [10/Jul/2015:18:43:25 +0300] "PROPFIND / HTTP/1.1" 207 "-" 598 "-" "Microsoft-WebDAV-MiniRedir/6.3.9
600" "-" 0.000 "-" NGINX-CACHE-- "-"
- [10/Jul/2015:18:43:27 +0300] "PROPFIND / HTTP/1.1" 207 "-" 1061 "-" "Microsoft-WebDAV-MiniRedir/6.3.
9600" "-" 0.000 "-" NGINX-CACHE-- "-"
- [10/Jul/2015:18:43:27 +0300] "PROPFIND /new.txt HTTP/1.1" 207 "-" 254 "-" "Microsoft-WebDAV-MiniRedi
r/6.3.9600" "-" 0.000 "-" NGINX-CACHE-- "-"
- [10/Jul/2015:18:43:27 +0300] "PROPFIND /new.txt HTTP/1.1" 207 "-" 254 "-" "Microsoft-WebDAV-MiniRedi
r/6.3.9600" "-" 0.000 "-" NGINX-CACHE-- "-"
- [10/Jul/2015:18:43:27 +0300] "PROPFIND /new.txt HTTP/1.1" 207 "-" 254 "-" "Microsoft-WebDAV-MiniRedi
r/6.3.9600" "-" 0.000 "-" NGINX-CACHE-- "-"
- [10/Jul/2015:18:43:27 +0300] "PROPFIND /new.txt HTTP/1.1" 207 "-" 254 "-" "Microsoft-WebDAV-MiniRedi
r/6.3.9600" "-" 0.000 "-" NGINX-CACHE-- "-"
- [10/Jul/2015:18:43:32 +0300] "PROPFIND /new%20(2).txt HTTP/1.1" 207 "-" 260 "-" "Microsoft-WebDAV-Mi
niRedir/6.3.9600" "-" 0.000 "-" NGINX-CACHE-- "-"
Такие сообщения валяться со страшной силой, меняется лишь цифра в скобках (2) на следующую по порядку до 10001.
Вопрос как добиться корректной работы dav каталога на винде ?
UPD: Если попробовать положить файл из под винды с помощью тотал командера ( с использованием webdav плагина) то получаю "ошибка при закачке файла", а в логах следующее:
upload [11/Jul/2015:15:32:40 +0300] "PROPFIND / HTTP/1.1" 207 "-" 1524 "-" "ezdavplugin/2.6 TotalCommander/8.5 (Windows/8; en_EN)" "-" 0.000 "-" NGINX-CACHE-- "-"
upload [11/Jul/2015:15:32:40 +0300] "PUT /try.txt HTTP/1.1" 500 "text/html; charset=utf-8" 186 "-" "ezdavplugin/2.6 TotalCommander/8.5 (Windows/8; en_EN)" "-" 0.000 "-" NGINX-CACHE-- "-"
upload [11/Jul/2015:15:32:41 +0300] "PROPFIND / HTTP/1.1" 207 "-" 1524 "-" "ezdavplugin/2.6 TotalCommander/8.5 (Windows/8; en_EN)" "-" 0.000 "-" NGINX-CACHE-- "-"