Наконец, отладив проблему, я обнаружил, что это правильная конфигурация.Чтобы упомянуть, я должен также прояснить, что иногда я устанавливаю аутентификацию в фоновом веб-сервере (IIS 7), а иногда внутри Apache (зависит от ситуации с клиентом).
1.Поскольку Apache - мой внешний прокси-сервер, а внутренний сервер - IIS7, при проверке подлинности IIS7 это сработало:
Отключить поддержку глаголов OPTIONS и PROPFIND - если веб-приложение не предназначено для использования для WebDAVРасширение веб-службы, обеспечивающее функциональность WebDAV, может быть установлено на Запрещено на сервере по умолчанию, на котором выполняется IIS.(Это могут быть серверные расширения WebDAV или FrontPage.) Если сайт предоставляет функциональность WebDAV через другое расширение, поставщик этого расширения должен быть вовлечен.Например, чтобы сделать это с помощью Windows SharePoint Services (WSS), сайт должен быть настроен на отключение интеграции клиента, или глагол OPTIONS и PROPFIND должен быть запрещен.(В IIS 6 удалите глаголы из строки регистрации в файле web.config. В IIS 7.0 используйте вкладку HTTP-глаголы функции фильтрации запросов, чтобы запретить глаголы.) Имейте в виду, что этот подход откроет содержимое в прочитанном-only mode, потому что этот подход отключает функцию прямого редактирования.
from: http://support.microsoft.com/kb/2019105/en-us
Итак, я установил фильтр содержимого для глаголов, и тогда он наконец-то сработал.
2.Затем я протестировал использование NTLM Auth в Apache.Моя исходная конфигурация работала нормально, когда Apache аутентифицировался.
Так что я столкнулся только с проблемой смешивания поведения:)
** EDIT ** Для IIS web.config это должно работать:
<system.webServer>
<security>
<requestFiltering>
<verbs applyToWebDAV="false">
<add verb="OPTIONS" allowed="false"/>
<add verb="PROPFIND" allowed="false"/>
</verbs>
</requestFiltering>
</security>
</system.webServer>