Невозможно поместить файл .svc в размещенный в IIS каталог WebDAV - в журналах указана ошибка HTTP 405 - PullRequest
1 голос
/ 19 марта 2011

Я пытаюсь публиковать через что-то более надежное, чем опция FTP, которая работает с перерывами в Visual Studio - и очень медленно.Итак, позвольте мне сначала спросить вас: в 2011 году, при использовании Visual Studio для публикации, является ли WebDAV лучшим вариантом?

В любом случае, я установил WebDAV, размещенный на IIS 7, и мне удалось сопоставить егокак диск.Я могу скопировать туда файлы, кроме всего, что имеет расширение .svc.Я могу опубликовать все, что я пробовал, а также опубликовать файл .svc, если я сначала переименую его во что-то другое, а затем переименую, после того как он уже будет в каталоге WebDAV.

Вот журнал IIS:

2011-03-19 18:32:54 192.168.0.9 PROPFIND /bin/service.svc - 80 SERVER\User my.ip.not.shown Microsoft-WebDAV-MiniRedir/6.1.7600 405 0 0 0

Как видите, он заканчивается в 405.

Единственная похожая вещь, которую мне удалось найти в Google, может быть решена путем настройки разделов и раздела файла applicationHost.Логично было бы проверить наличие записи, но это ничего не говорит о .svc.Я также пытался установить для applyToWebDAV значение false.

Любые идеи?

ОБНОВЛЕНИЕ:

Подумав, может ли это быть просто, что WCFОбработчик http перехватывает URL, так как .svc зарегистрирован этим обработчиком?

1 Ответ

2 голосов
/ 19 марта 2011

Хорошо, я понял это. Обработчик WCF был упорядочен перед обработчиком WebDAV в сопоставлениях обработчиков, поэтому он перехватывал запросы к * .svc. В свою очередь, он вернул метод 405, недопустимый для PROPFIND.

Просто переместите запись WebDAV вверх в списке, пока она не будет отображена надлежащим образом в начале сопоставлений.

...