Обработчик Http IIS 6 без предопределенного расширения файла

#asp.net #iis #iis-6

#asp.net #iis #iis-6

Вопрос:

Ну, у меня есть обработчик http, который настроен следующим образом

 <add name="DocumentHandler" verb="*" path="/LinkDocumentHandler/*" type="MyTestProject.LinkDocumentHandler, MyTestProject" />
  

(Удалите имя в IIS 6 и переместите его в нужный раздел)

Это отлично работает на моем веб-сервере VS. все запросы, которые отправляются в каталог LinkDocumentHandler, обрабатываются обработчиком..

Теперь, когда я перехожу к IIS 6.0, это не сработало, поэтому я немного погуглил и обнаружил, что мне нужно определить, к каким типам файлов IIS 6.0 будет переходить asp.net ну, я не могу предсказать их все, так что это было бы не так приятно..

Я попытался изменить /LinkDocumentHandler/* на /LinkDocumentHandler.aspx/*, но это не помогло..

Итак, есть ли какой-либо способ заставить IIS 6.0 передавать все запросы к файлам с этим вспомогательным каталогом моему обработчику http??

Ответ №1:

В IIS я добавил подстановочный знак и снял флажок «проверить, существует ли файл», и это просто сработало (использовалась та же DLL, что и .aspx)!

Ответ №2:

Это очень сложно сделать в IIS 6, что вам действительно нужно сделать для этого, так это написать фильтр ISAPI. Помимо этого, сопоставления IIS в значительной степени контролируются расширением файла, поэтому очень сложно заставить его передавать все запросы в asp.net .

Здесь есть аналогичное обсуждение, где, по-видимому, OP, возможно, нашел «частичное» решение.