<div dir="ltr">Не ужели нет никаких вариантов дописать слеш в конец того каталога в который перемещается другой каталог?</div><div class="gmail_extra"><br><div class="gmail_quote">25 июня 2015 г., 14:54 пользователь Иван Мишин <span dir="ltr"><<a href="mailto:simplebox66@gmail.com" target="_blank">simplebox66@gmail.com</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Андрей, спасибо, помогло. Добавил break и каталоги удаляются без проблем.<div>Но есть еще один вопрос, касающийся метода MOVE, то есть перемещение каталогов.</div><div><br></div><div>К письму прикрепляю логи.<br><div>Проблема конкретно тут:</div></div><div>2015/07/26 14:48:08 [error] 6735#0: *61 both URI "/Family/Новая папка/" and "Destination" URI "<a href="http://192.168.200.92/Family/%D0%9D%D0%BE%D0%B2%D0%B0%D1%8F%20%D0%BF%D0%B0%D0%BF%D0%BA%D0%B0%20%282%29/%D0%9D%D0%BE%D0%B2%D0%B0%D1%8F%20%D0%BF%D0%B0%D0%BF%D0%BA%D0%B0" target="_blank">http://192.168.200.92/Family/%D0%9D%D0%BE%D0%B2%D0%B0%D1%8F%20%D0%BF%D0%B0%D0%BF%D0%BA%D0%B0%20%282%29/%D0%9D%D0%BE%D0%B2%D0%B0%D1%8F%20%D0%BF%D0%B0%D0%BF%D0%BA%D0%B0</a>" should be either collections or non-collections, client: 192.168.200.81, server: 192.168.200.92, request: "MOVE /Family/%D0%9D%D0%BE%D0%B2%D0%B0%D1%8F%20%D0%BF%D0%B0%D0%BF%D0%BA%D0%B0 HTTP/1.1", host: "192.168.200.92"<br></div><div><br></div><div>Винда не понимает сама где каталоги, а где просто файлы.</div><div>То есть в случае метода MOVE я с помощью rewrite дописываю в конце слеш, а вот как дописать слеш к тому каталогу в который я перемещаю первый каталог не понятно. Если к методу PROPFIND дописать </div><div><div>if (-d $webdav_root/$uri) { </div><div>       rewrite ^(.*[^/])$ $1/ break;</div><div>       }</div></div><div>то в логах просто все зацикливается и все. Может у вас есть какие-то мысля по этому поводу?</div></div><div class="gmail_extra"><br><div class="gmail_quote">25 июня 2015 г., 11:49 пользователь Andrey Istochkin <span dir="ltr"><<a href="mailto:alstpostbox@gmail.com" target="_blank">alstpostbox@gmail.com</a>></span> написал:<div><div class="h5"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Попробуйте в @delete_handler в rewrite добавить 'break'. Так как в access_логе фигурирует 598, то похоже на то, что @delete_handler отрабатывает, отрабатывает rewrite, после чего запрос уходит снова в 'location ^~ /Family', опять отрабатывает 'return 598', но так как recursive_error_pages по-умолчанию выключена, error_page на этот раз не срабатывает, и клиент получает 598.</div><div class="gmail_extra"><br><div class="gmail_quote">25 июня 2015 г., 9:28 пользователь Иван Мишин <span dir="ltr"><<a href="mailto:simplebox66@gmail.com" target="_blank">simplebox66@gmail.com</a>></span> написал:<div><div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span style="font-size:12.8000001907349px">в этом случае до винды этот код дойти не должен. если доходит - вы</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">плохо настроили error</span></blockquote><div> </div></span><div>Ну судя по tcpdump на стороне винды, 598 код все же доходит до нее. </div><span><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span style="font-size:12.8000001907349px">про какой? про переход в именованный локейшн? или про то, что код,</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">который для этого используется, наружу отдаваться не должен?</span></blockquote><div><br></div></span><div>И про то и про другое, если не затруднит.</div><div>ВО-первых, PROPFIND метод работает, при том что он организован в моем конфиге тем же способом что и метод DELETE с той лишь разницей что PROPFIND через 599 код работает, а DELETE через 598. Но я так понимаю что-это различие не на что не влияет ибо пробовал менять коды местами и...вот цитата моих слов по этому поводу:</div><span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span style="font-size:12.8000001907349px">599 отрабатывает точно правильно потому что метод PROPFIND работает без вопросов. В качестве экспиремента поменял местами 599 и 598 в итоге PROPFIND как работал так и работает а DELETE каталогов как не работал так и не работает.</span></blockquote><div><br></div></span><div>ВО-вторых, мне казалось что если с клиента ( в данном случае с винды) ушел запрос DELETE на nginx и nginx то nginx его должен отработать и каталог удалить, и не важно что он ответит клиент, потому что для клиента этот ответ будет чисто информационным т.е. не будет влиять на результат выполнения первого запроса (запроса на DELETE).</div><div> </div></div><div class="gmail_extra"><br><div class="gmail_quote">24 июня 2015 г., 18:55 пользователь Daniel Podolsky <span dir="ltr"><<a href="mailto:onokonem@gmail.com" target="_blank">onokonem@gmail.com</a>></span> написал:<div><div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>> Даниель, можно подробнее пожалуйста про этот момент<br>
</span>про какой? про переход в именованный локейшн? или про то, что код,<br>
который для этого используется, наружу отдаваться не должен?<br>
<div><div>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></div></div></blockquote></div></div></div><br></div>
<br>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br></blockquote></div></div></div><br></div>
<br>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br></blockquote></div></div></div><br></div>
</blockquote></div><br></div>