Я создаю веб-сайт, ссылающийся на сборку, которая содержит несколько js-скриптов в качестве встроенных ресурсов, некоторые элементы управления, которые используют эти скрипты, и HttpResourcesHandler, который знает, как получить эти встроенные скрипты, когда их запрашивают.
В web.config у меня есть запись в разделе, которая гласит
<add verb="*"
path="/embedded/controlscripts/*"
validate="false"
type="CWeb.Controls.Web.HttpResourcesHandler, CWeb.Controls.EditBox" />
Этот элемент управления и веб-сайт работает совершенно нормально при отладке с помощью сервера веб-разработки Visual Studio, но если я затем переключаю веб-сайт на IIS (v7 - у меня Vista, и, похоже, проблем с отладкой нет сайт использует IIS 5 или 6), элемент управления больше не может получить доступ к сценариям. Я получаю сообщение об ошибке HTTP 404.0, указывающее, что StaticFileHandler не может найти файл. Я знаю, что это встроено.
Таким образом, StaticFileHandler, кажется, захватывает запрос сценария перед моим собственным и возвращает 404. Как я могу сказать IIS использовать мой собственный обработчик ресурсов для каталога внедренного / controlscripts, а не staticfilehandler? Кстати, я запускаю сайт в классическом режиме.