Совет. Как уже было, сказано ранее, вы можете конфигурировать множество Web-сайтов на одном сервере IIS. Каждый Web-сайт должен работать на отдельном порту. Этот порт должен быть указан в URL-адресе, как было показано ранее при доступе к Web-приложению, работающему на одном сайте, за исключением порта с номером по умолчанию 80. По сути, это означает, что вы можете иметь только один Web-сайт, работающий на порту 80. Однако служба IIS поддерживает представление заголовков хостов. В свойствах Web-сайта в диалоговом окне Advanced Web Site Identification (Расширенная идентификация Web-сайта) вы можете сконфигурировать заголовок хоста для Web-сайта. С помощью этой настройки вы можете иметь множество Web-сайтов, работающих на одном и том же порту. (Естественно, каждому Web-сайту затем потребуется отличное значение для настройки заголовка хоста.) Ваш Web-сервер должен быть доступен через множество машинных имен, тогда как каждое имя машины сопоставляется с настроенным значением заголовка хоста. В данном случае, служба IIS определяет Web-сайт, который содержит Web-приложение, обрабатывающее запрос на основе имени машины запрошенного Web-сервера. Она сравнивает имя машины со значениями заголовка хоста Web-сайтов и выбирает Web-сайт с именем заголовка хоста, совпадающим с именем машины.

Обработка запросов с помощью IIS и ASP.NET

Когда служба IIS получает запрос на статическое содержимое, например HTML-страницу или графику, она сразу же обрабатывает файл (здесь предполагается, что в текущем контексте безопасности этого файла нет параметров, запрещающих к нему доступ). Любой файл, зарегистрированный DLL-библиотекой ASP.NET, обрабатывается не службой IIS, а посредством этой DLL-библиотеки ASP.NET.

Это говорит о том, что для запроса ASP.NET служба IIS просто выполняет некоторые шаги по предварительной обработке (например, проверяет защиту), а затем направляет запрос расширению aspnet_isapi.dll. Однако само расширение не обрабатывает запрос. Хотя модели обработки различаются между IIS 5.x и IIS 6.0, расширение ISAPI в любом случае направляет запрос управляемой исполняющей среде ASP.NET, как можно видеть в высокоуровневой архитектуре, показанной на рис. 18.3.

Рис. 18.3. Высокоуровневая архитектура ASP.NET

предыдущая    следующая страница    вначало главы    оглавление

749

Hosted by uCoz