Представляем IIS Express

Сегодня разработчики создают и тестируют ASP.NET-сайты и приложения, используя один из двух веб-серверов:

  • ASP.NET Development Server, который является встроенным в Visual Studio
  • IIS Web Server, который встроен в Windows.

Каждый из них имеет свои преимущества и недостатки. Многие разработчики не раз отмечали, – «Очень хотелось бы с легкостью использовать ASP.NET Development Server, но при этом иметь всю мощь и возможности IIS». Сегодня, я с радостью представляю вам бесплатную версию IIS Express, который объединяет в себе лучшие качества обоих веб-серверов и позволит еще проще разрабатывать и запускать ASP.NET-сайты и приложения.

IIS Express будет работать с VS 2010 и Visual Web Developer 2010 Express, запускаться на Windows XP и выше, не требует прав администратора и внесения изменений в код приложения. Позволяет работать со всеми типами ASP.NET-приложений и разрабатывать, используя всю мощь возможностей IIS 7.x.

Как обстоят дела в наше время

Прежде чем углубиться в детали IIS Express, давайте пробежимся по ASP.NET Development Server и IIS.

ASP.NET Development Server

Встроенный в Visual Studio ASP.NET Development Server (так же известен, как «Cassini») обладает преимуществами легкого и быстро запуска. Он не прослушивает удаленные порты (что делает проще работу в корпоративной среде в плане безопасности), работает даже когда у вас нет прав администратора, не требует отдельной установки на машину.

clip_image001

Недостатком же является неполный набор возможностей веб-сервера. Например, отсутствует поддержка SSL, URL Rewriting Rules (о котором я недавно писал), собственных настроек безопасности и другие возможности IIS 7.

IIS веб-сервер

IIS – альтернативный способ для запуска и тестирования приложений с Visual Studio. Вы можете настроить в Visual Studio любой веб-проект на использование IIS, нажав правой кнопкой по проекту, зайдя в свойства и далее выбрав закладку «Web»:

clip_image002

Используя IIS, как сервер для разработок вы получаете все возможности веб-сервера (SSL, URL Rewrite Rules и т.п.). IIS является полноценным веб-сервером, а это значит, что вы точно видите, как будет работать ваше приложение на публичном сервере.

Но и тут есть недостатки. Многие компании запрещают использовать полноценные веб-сервера на машинах разработчиков. IIS также требует прав администратора для установки и отладки проектов. Различные версии Windows поддерживают различные версии IIS. Например, если у вас Windows XP, то у вас должен стоять IIS 5.1, который не поддерживает все новые возможности IIS 7.x. Настраивая веб-проект в VS на использование IIS, вам придется доустановить недостающие компоненты и пройти дополнительные шаги настройки.

IIS Express – все лучшее

Мы работали над новой версией IIS 7.x, которая оптимизирована для сценариев разработчиков, которую мы назвали «IIS Express». Мы думаем, он объединяет в себе легкость использования ASP.NET Web Server и всю мощь IIS. Вот перечень особенностей:

· Он легче и проще в установке (менее 10 Mб для загрузки и супербыстрая установка)

· Не требует прав администратора для запуска/отладки приложений из Visual Studio

· Предоставляет полный набор возможностей веб-сервера, включая SSL, URL Rewrite, обеспечивает поддержку медиа и других модулей IIS 7.x

· Поддерживает ту же модель расширения web.config, что и IIS 7.x

· Может быть установлен вместе с IIS и ASP.NET Development Server, не конфликтует абсолютно

· Работает на Windows XP и выше, дает все преимущества IIS 7.x на всех ОС-платформах

На IIS Express (как и на ASP.NET Development Server) можно быстро запустить любой сайт из каталога на диске. Не требуется никаких шагов регистрации или настройки. Все это позволяет просто и со вкусом работать любому веб-разработчику.

Интеграция с VS 2010

Мы позаботились о простой интеграции IIS Express в Visual Studio 2010. Вы можете использовать его вместо ASP.NET Web Server, как веб-сервер по умолчанию для ASP.NET-проектов. Как и с ASP.NET Development Server, вам не нужно регистрировать сайт или виртуальный каталог для IIS Express. Он используют ту же модель работы, что и ASP.NET Web Server сегодня, но только дает больше возможностей.

Когда я нажму F5 для запуска ASP.NET-проекта, Visual Studio автоматически запустит IIS Express и будет использовать его для запуска/отладки приложений (никаких дополнительных настроек не требуется). Как и во время работы ASP.NET Web Server, IIS Express будет отображаться в трее панели задач:

clip_image003

Нажав правой кнопкой по иконке и выбрав «Exit» вы с легкостью выключите IIS Express. Вы также можете просмотреть список всех запущенных сайтов, а также их месторасположение на диске и версию .NET:

clip_image004

Две потрясающие возможности:

  1. Запущенный «Test Site», как и сам IIS Express, живет в каталоге C:\Users\[username]. Что позволяет использовать IIS Express, сайты и другие сценарии, которые не возможны с полной версией IIS (включая возможность запускать IIS Express, как в ограниченной по параметрам безопасности корпоративной среде, так и на школьных рабочих местах с ограниченным доступом) без прав администратора.
  2. Запущенный «Test Site» поддерживает методы доступа HTTP и HTTPS. IIS Express автоматически устанавливает самоподписываемый сертификат и включает URL ACL- и SSL-сертификаты для портов, так что разработчики (работающие не с правами администратора) могут использовать SSL, не требуя повышения уровня прав для дополнительной установки или конфигурирования. Это позволяет настраивать защищенные страницы прямо в приложениях (как формы входа) на SSL и тестировать во время разработки, как на реальном веб-сервере.
Набор возможностей IIS 7.x

Сегодня, IIS Express так же легко использовать, как и ASP.NET Web Server. Но, учитывая тот факт, что IIS Express основан на IIS 7x, у вас в руках оказывается полнофункциональный веб-сервер. Вы можете запускать свои приложения, как на реальном внешнем веб-сервере. Вдобавок к SSL, вы можете использовать такие модули, как URL Rewrite, Media Extensions, Dynamic Compression, Advanced Logging, Custom Security и др.

Кроме того, IIS Express поддерживает классический ASP и другие типы файлов и расширений, поддерживаемых IIS. Все это делает его идеальным для сайтов, комбинирующим различные технологии.

Заключение

Мы думаем IIS Express позволит гораздо проще создавать, запускать и тестировать веб-приложения. Он работает со всеми версиями ASP.NET и поддерживает все типы ASP.NET-приложений (включая Web Forms и MVC). Что еще лучше – вам не нужно ничего менять в коде. Вы можете использовать его для своих проектов уже сегодня.

Выход публичной beta-версии IIS Express состоится уже скоро. Вы сможете нажать правой кнопкой на любой папке и запустить находящийся в ней веб-сайт в IIS Express. Позже в этом году, мы выпустим исправление для VS 2010 и Visual Web Developer 2010 Express, которое позволит использовать IIS Express по умолчанию вместо встроенного ASP.NET Developer Server. Дальнейшие версии Visual Studio будут снабжаться данным функционалом по умолчанию.

Оригинал статьи

Comments

  • Anonymous
    July 28, 2010
    Когда можно будет скачать и попробовать?

  • Anonymous
    July 30, 2010
    Круто. Сначала, правда, подумалось, что это PWS Reloaded.

  • Anonymous
    August 01, 2010
    Ну наконец-то! Ура!

  • Anonymous
    September 18, 2010
    Так действительно где его и когда можно скачать будет?