Практическое руководство. Настройка расширений для обработчиков HTTP-данных в IIS

Visual Studio 2010

Обновлен: Ноябрь 2007

По умолчанию IIS передает запросы только на определенные типы файлов для обслуживания ASP.NET. Файлы с расширениями имени файла, такими как ASPX, ASMX и ASHX, уже сопоставлены с расширением ISAPI в ASP.NET (Aspnet_isapi.dll). Это относится к IIS версии 6.0, IIS 7.0 при запуске в классическом режиме и к управляемым обработчикам в IIS 7.0 при запуске в интегрированном режиме.

Для того чтобы другие расширения имени файла передавались из IIS в ASP.NET, необходимо зарегистрировать расширения в IIS. Дополнительные сведения об участии обработчиков в жизненном цикле приложения см. в разделе Общие сведения о жизненном цикле приложения ASP.NET для IIS 5.0 и 6.0 или Общие сведения о жизненном цикле приложения ASP.NET для служб IIS 7.0.

Сопоставление расширения имени файла в IIS версии 6.0

  1. Откройте IIS Manager.

  2. Разверните узел для компьютера веб-сервера, разверните узел Веб-узлы, а затем узел Веб-узел по умолчанию.

  3. Щелкните правой кнопкой мыши имя приложения и выберите пункт Свойства.

    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    Сведения о создании приложения ASP.NET см. в разделе Практическое руководство. Создание и настройка локальных веб-узлов ASP.NET в IIS 6.0.

  4. Откройте вкладку Виртуальный каталог и выберите пункт Конфигурация.

  5. На вкладке Сопоставления выберите команду Добавить.

    Появится диалоговое окно Добавление и изменение сопоставления расширения приложению.

  6. В поле Исполняемый файл введите имя файла Aspnet_isapi.dll или перейдите к нему. По умолчанию файл имеет следующее расположение:

    %windows%\Microsoft.NET\Framework\version\
    
    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    Можно получить имя и путь к файлу из других сопоставлений, таких как сопоставления с ASPX-файлами.

  7. В поле Расширение введите расширение имени файла, например .sample.

    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    Убедитесь, что расширение имени файла указано с точкой (.).

  8. Установите флажок Проверка наличия файла в соответствии с расширением имени файла приложения. Выберите следующие параметры:

    • True. Расширение имени файла представляет физический файл в приложении. В этом случае, если запрашиваемый файл не существует на диске, IIS выводит сообщение об ошибке.

    • False. Расширение имени файла не представляет физический файл. Вместо этого оно обрабатывается динамически классом, сопоставленным с расширением в ASP.NET.

  9. Нажмите кнопку ОК, а затем закройте IIS Manager.

Сопоставление расширения имени файла в IIS 7.0 при запуске в классическом режиме

  1. Откройте IIS Manager.

    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    В и Windows Server 2008 если включена функция контроля учетных записей (UAC), то появится сообщение, предлагающее продолжить работу с диспетчером. Дополнительные сведения см в разделе Общие сведения о контроле учетных записей.

  2. Разверните узел для компьютера веб-сервера, разверните узел Веб-узлы, а затем узел Веб-узел по умолчанию.

  3. Выберите узел для приложения.

    Отображается область Просмотр возможностей.

  4. В области Просмотр возможностей дважды щелкните Сопоставления обработчиков.

  5. В области Действия выберите команду Добавить сопоставление сценария.

    Откроется диалоговое окно Добавление сопоставления сценария.

  6. В диалоговом окне Добавление сопоставления сценария укажите следующие сведения:

    • Путь запроса. Имя файла или расширение имени файла, с которым выполняется сопоставление.

    • Исполняемый файл. Путь к EXE- или DLL-файлу, с помощью которого будет обрабатываться запрос. При выполнении в классическом режиме следует указать расширение ISAPI в ASP.NET (Aspnet_isapi.dll).

    • Имя. Описательное имя.

  7. Нажмите кнопку ОК, чтобы закрыть диалоговое окно Добавление сопоставления сценария.

    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    Использование IIS Manager в IIS 7.0 для добавления пользовательского расширения обработчика равнозначно регистрации расширения обработчика в файле конфигурации приложения ASP.NET (Web.config). При регистрации элемент handler добавляется в раздел handlers группы system.webServer.

  8. Откройте файл конфигурации приложения (Web.config).

  9. Найдите элемент httpHandlers в разделе system.web и добавьте запись для расширения имени файла.

    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    Расширение имени файла должно быть зарегистрировано как в элементе httpHandlers, так и в элементе handlers.

Сопоставление расширений имени файла в IIS 7.0 при запуске в интегрированном режиме

  1. Выполните действия 1 – 3 предыдущей процедуры.

  2. В области Действия выберите команду Добавить управляемый обработчик.

    Откроется диалоговое окно Добавление управляемого обработчика.

  3. В диалоговом окне Добавление управляемого обработчика укажите следующие сведения.

    • Путь запроса. Имя файла или расширение имени файла, с которым выполняется сопоставление.

    • Тип. Имя типа (класса) управляемого обработчика. Если обработчик определен в папке App_Code приложения ASP.NET, имя его типа появится в раскрывающемся списке.

    • Имя. Описательное имя.

  4. Нажмите кнопку ОК, чтобы закрыть диалоговое окно Добавление управляемого обработчика.

    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    Использование IIS Manager в IIS 7.0 для добавления расширения пользовательского обработчика равнозначно регистрации расширения обработчика в файле конфигурации приложения ASP.NET (Web.config).

    Bb515343.alert_note(ru-ru,VS.100).gifПримечание.

    Для добавления пользовательского расширения обработчика при выполнении IIS 7.0 в интегрированном режиме необходима его регистрация только в элементе handlers. Если необходимо также сохранить регистрацию в элементе httpHandlers, следует создать элемент validation (если он еще не существует) в разделе system.webServer и задать для его атрибута validateIntegratedModeConfiguration значение false. Дополнительные сведения см. в разделе Практическое руководство. Отключение предупреждений о регистрации в IIS версии 7.0.

Показ: