Как администратор IIS, иногда раздражает необходимость отражать все оскорбления администраторов Apache, которые заявляют о превосходстве врожденного сервера.
Как правило, обсуждение веб-администрирования начинается со всех различных дыр в безопасности, которые мешают IIS и негативной прессе, которую платформа получила за последний год. Затем он неизменно переходит к обсуждению того, как Netcraft и другие сайты статистики показывают, что Apache является доминирующим сервером в Интернете, как какой-то большой сайт использует Apache или как можно добавить в Apache столько крутых модулей .
Указывая на то, что множество неопознанных корпоративных серверов работают под управлением IIS; что это тоже бесплатный сервер (как в комплекте с операционной системой); или что на самом деле существует множество отличных надстроек для IIS (в том числе многие, которые предоставляют исходный код ), мало что может отговорить этих серверных шовинистов от их мнения.
Однако вместо того, чтобы хныкать о грубых администраторах Apache, я подумал, что более полезным ответом может быть просто записать некоторые методы, которые я нашел для улучшения IIS. Итак, без дальнейших задержек, вот мои лучшие десять советов, чтобы максимально использовать ваш IIS.
Совет 10: настройте страницы ошибок
Хотя это довольно просто сделать, похоже, мало кто использует преимущества настройки страницы ошибок. Просто выберите вкладку «Пользовательские ошибки» в MMC и сопоставьте каждую ошибку, например 404, с соответствующим шаблоном HTML или ASP. Полную информацию можно найти здесь . Если вам нужно еще более простое решение — или если вы хотите позволить разработчикам обрабатывать сопоставление, не предоставляя им доступ к MMC, — используйте продукт, подобный CustomError .
Совет 9: Погрузитесь в MetaBase
Если вы думаете, что Apache является мощным, потому что он имеет конфигурационный файл, то взгляните на MetaBase. С помощью IIS вы можете делать все, что захотите, редактируя MetaBase. Например, вы можете создавать виртуальные каталоги и серверы; останавливать, запускать и останавливать сайты; и создавать, удалять, включать и отключать приложения.
Microsoft предоставляет утилиту с графическим интерфейсом MetaEdit, которая чем-то похожа на RegEdit, чтобы помочь вам читать и писать в MetaBase. Загрузите последнюю версию здесь . Но чтобы по-настоящему поразить тех администраторов UNIX — и в полной мере использовать MetaBase, научившись манипулировать им программно, — вы захотите попробовать интерфейс командной строки, официально называемый утилитой сценариев администрирования IIS. Его короткое имя — adsutil.vbs, и вы найдете его в C: inetpubadminscripts или в% SystemRoot% system32inetsrvadminsamples вместе с множеством других полезных административных сценариев.
Тем не менее, предостережение: как и файлы Apache conf, MetaBase очень важен для работы вашего веб-сервера, так что не разрушайте его. Подкрепите это сначала.
Совет 8: добавьте проверку орфографии в ваши URL
Люди Apache всегда хвастаются небольшими хитростями, на которые способен Apache — особенно из-за большого количества модулей, которые могут расширить базовую функциональность сервера. Одним из самых крутых из них является возможность исправления опечаток URL с помощью модуля mod_speling.
Что ж, благодаря программному обеспечению Port80 теперь кажется, что администраторы IIS тоже могут сделать этот трюк, используя фильтр ISAPI под названием URLSpellCheck . Вы можете проверить это прямо на их сайте, воспользовавшись URL-адресами, такими как www.urlspellcheck.com/fak.htm, www.urlspellcheck.com/faq1.htm — или любой другой простой опечаткой, которую вы захотите сделать.
Совет 7: переписать ваши URL
Очистка ваших URL-адресов имеет множество преимуществ: она может повысить безопасность вашего сайта, облегчить проблемы с миграцией и обеспечить дополнительный уровень абстракции для ваших веб-приложений. Например, нет ничего особенного в том, чтобы перейти с ColdFusion на сайт на базе ASP, если вы можете переназначить URL-адреса.
Пользователи Apache долго хвастались огромной мощью mod_rewrite — стандартного модуля Apache для перезаписи URL. Что ж, в настоящее время существует буквально дюжина версий этого типа продукта для IIS — многие из них немного проще в использовании, чем mod_rewrite, что предполагает знакомство с обычными тайными выражениями _expression. Проверьте, например, IIS ReWrite или ISAPI ReWrite . Так что не хвастайся, партизаны Apache!
Совет 6: добавьте обнаружение браузера
Существует много способов создания веб-сайтов, но предполагать, что у каждого браузер определенного размера или размера экрана, просто глупо. Простые _JavaScript снифф-скрипты существуют для обнаружения браузеров на стороне клиента, но если вы являетесь пользователем IIS, вы можете добиться большего успеха с продуктом BrowserHawk от CyScape. В мире Apache нет ничего похожего на этот популярный, зрелый и хорошо поддерживаемый продукт.
Говоря о CyScape, они недавно добавили интересный похожий продукт под названием CountryHawk, который помогает с обнаружением местоположения, но до сих пор у меня не было контента, чувствительного к языку или местоположению, чтобы оправдать его попытку.
Совет 5: Gzip-контент сайта
Браузеры могут обрабатывать сжатый и сжатый контент и распаковывать его на лету. Хотя в IIS 5 была встроенная функция gzip, она почти не работает. Введите такие продукты, как Pipeboost, которые дают нам лучшую функциональность — подобно тому, что пользователи Apache наслаждались с mod_gzip . Не тратьте свою пропускную способность — даже Google кодирует свой контент, а их страницы очень маленькие.
Совет 4. Кэшируйте ваш контент
Пока я занимаюсь вопросами повышения производительности, не забудьте сделать ваш сайт кеш-дружественным. Вы можете установить заголовки срока действия для разных файлов или каталогов прямо из MMC. Просто щелкните правой кнопкой мыши элемент с помощью IIS MMC, перейдите на вкладку «HTTP-заголовки» и все дальше. Если вы хотите установить заголовки управления кэшем программно — или даже лучше, пусть разработчики вашего сайта сделают это — используйте что-то вроде CacheRight . Если вы хотите пойти дальше и добавить кеширование обратного прокси-сервера, особенно для сгенерированного контента, используйте такой продукт, как XCache, который также создает сжатие.
Это может потребовать больше времени и затрат, чтобы в полной мере воспользоваться преимуществами кэширования, но когда вы наблюдаете, как уменьшаются ваши журналы, потому что они не содержат тонны бессмысленных 304 ответов, а потребление полосы пропускания падает, как камень, — даже если общее число просмотров страниц увеличивается по сравнению с тот же период — вы начнете понимать, почему этот конкретный совет так важен. Сайты, поддерживающие кеширование, встречаются довольно редко, но в Интернете достаточно информации об огромных преимуществах, которые можно получить, если сделать это правильно. Посетите страницу Брайана Дэвидсона , этот отличный урок от Марка Ноттингема , и что AOL хочет сказать по этому вопросу .
Совет 3: Настройте свой сервер
Настройка IIS — не маленькая тема — ей посвящены целые книги и курсы. Но некоторая хорошая базовая справка доступна в Интернете, например, эта статья от гуру IIS Бретт Хилл или эта статья базы знаний от самой Microsoft . Однако, если вам не хочется пачкать руки — или вы не можете позволить себе потратить время и средства на то, чтобы превратиться в эксперта, — взгляните на XTune от создателей XCache. Его мастера по настройке производительности проведут вас через процесс настройки вашей среды IIS и по пути дадут экспертные рекомендации.
Совет 2: Защитите свой сервер с помощью простых исправлений
Конечно, люди собираются атаковать сайты, но вам не обязательно быть сидячей уткой, если вы готовы приложить хоть небольшое усилие.
Во-первых, не рекламируйте тот факт, что вы запускаете IIS, показывая заголовок вашего HTTP-сервера. Удалите или замените его, используя что-то вроде ServerMask — вероятно, лучшие двадцать пять долларов, которые вы когда-либо потратили. Вы можете пойти дальше, удалив ненужные расширения файлов, чтобы более эффективно маскировать серверную среду, и сканировать URL-адреса запросов на наличие признаков эксплойтов.
Существует ряд коммерческих продуктов, которые выполняют сканирование ввода пользователя, и Microsoft предлагает бесплатный инструмент под названием URLScan, который выполняет эту работу. URLScan работает в сочетании с IISLockDown , стандартным пакетом безопасности, который, вероятно, должен быть установлен на каждом сервере IIS на планете. Это простые исправления, которые могут окупиться, поэтому используйте их сейчас!
Совет 1: патч, патч, патч!
Хорошо, мы в мире IIS должны исправлять наши системы и делать исправления. Однако, как бывший администратор Solaris, мне приходилось делать то же самое, поэтому я не уверен, почему это большой сюрприз. Вы действительно должны идти в ногу с патчами. Microsoft, конечно, является окончательным источником , но если вы также можете использовать высоко ценится www.cert.org . Просто поиск по «IIS».
Ну вот и все: 10 советов администраторам IIS по улучшению своих серверов. Некоторые советы могут устареть, когда IIS 6 станет золотым, но сейчас, по крайней мере, администраторам W2K и NT IIS следует применить некоторые из них сегодня и спать немного лучше ночью.