В рамках курса рассматриваются архитектура и инструменты администрирования IIS 7.0, затрагиваются вопросы развертывания IIS 7.0, управления веб-сайтами и приложениями, настройки безопасности и производительности, а также обеспечения высокой доступности веб-сайтов на базе IIS 7.0. В отличие от традиционных курсов по администрированию в рамках данного курса больший акцент сделан на вопросах внутреннего устройства компонентов IIS 7.0. Глубокое знание архитектуры позволяет администратору принимать более взвешенные решения в вопросах развертывания, устранения проблем и обеспечения безопасности веб-серверов на основе IIS 7.0.
Курс ориентирован на ИТ-специалистов, имеющих знания и опыт в следующих областях: развертывание, администрирование, сопровождение серверов под управлением Windows Server 2003 или Windows Server 2008; настройка стека протоколов TCP/IP; управление службами цифровых сертификатов.
Содержание курса:
1. Обзор архитектуры IIS 7.0 2. Обзор архитектуры IIS 7.0 (продолжение) 3. Установка IIS 7.0 4. Настройка веб-сайтов и приложений 5. Обеспечение безопасности серверов IIS 7.0. Удаленное администрирование и делегирование административных полномочий 6. Оптимизация производительности веб-сайтов, повышение доступности серверов IIS 7.0 и ключевые изменения IIS в Windows Server 2008 R2
Выпущено обновление KB980363, решающее данную проблему. Обновление внесло существенные изменения в работу модуля FastCGI на IIS 7.0. Описание обновления можно почитать в блоге RuslanY. Ilya Kashapov, спасибо за информацию.
Хочу спросить у общественности использующей IIS 7, FastCGI и PHP: Какой статус клиенту вернет у вас код
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://yandex.ru");
или
header("Location: http://yandex.ru", true, 301);
У меня, чего я только не делал, возвращается клиенту ответ "302 Redirect" Рылся в инете, пишут, что это баг FastCGI, да по логам видно, что это FastCGI меняет статус. Но проблеме уже больше 8 месяцев, а решения найти не могу. Неужели я одинок, и эта проблема терзает только меня в нашем сообществе?
Дорогие друзья! Если вам хочется узнать в Microsoft что-то связанное с вебом и интернет-бизнесом, как с технической, так и с деловой точки зрения - смело пишите на ...@microsoft.com!
Петр Диденко, к Вам действительно можно обратиться? Есть проблема, отправил уже трижды письмо на russia@microsoft.com, но мне говорят, что ничего не видят.
Тестирование PHP-акселератора для IIS 7+ (Windows Cache Extension for PHP, он же WinCache). С другими PHP-акселераторами не сравнивал, сравнивал лишь IIS+PHP и IIS+PHP+WinCache.
Вводные данные:
1С-Битрикс: Управление сайтом 8.5.1 "Бизнес", свежий, демо-сайт
Windows Server 2008 Web, IIS 7, x86
Виртуалка 2 х 2Ггц, 800 Мб RAM
PHP 5.2.11
MySQL 5.1.37
Тестирование: Apache JMeter, 5 конкурентных пользователей, три десятка страниц с демо-сайта, 20 секунд на прогрев. Все тесты проводил после перезапуска IIS и MySQL.
Результаты: Оценка производительности из "Монитора производительности" увеличилась с 3.37 до 13.12. Количество обрабатываемых в секунду запросов увеличилось с 3.9 до 11.4 (не айс, но это ж виртуалка ).
Было:
Стало:
В общем, акселератор удался. Сразу скажу, что через Web Installer WinCache не встал, пришлось руками прикручивать. Субъективно с WinCache сайт стал просто летать. Возникло ощущение, что уже Firefox не успевает страницы открывать
Задача: минимизировать время поиска и локализации ошибки на продакшн сайте или сервере разработчиков.
Типичный сценарий: получаем багрепорт или сами ловим ошибку (не всегда это что-то банальное вроде назакрытой скобки). В любом случае, всё сводится к анализу error-лога или переключению в режим вывода ошибок на поток отправляемый в браузер и последующей её локализации и исправлении.
Иногда ошибка воспроизводится только при довольно экзотических условиях. Приходится их или ждать или что труднее - моделировать. Хорошо, если можно попросить пользователя повторить шаги приводящие к ошибке.
В IIS7 появился очень удобный инструмент по мониторингу ошибок приложения. Причём, ошибка !== ошибке PHP, это может быть ошибка авторизации, слишком долгое время исполнения скрипта или определённый заголовок, который выставит сервер.
Всё сводится к следующему алгоритму:
1. Включаем механизм буферизации ошибочных запросов 2. Настраиваем правила ротации файлов запросов: по умолчанию сохраняются последние 50 ошибочных запросов. В папку "\inetpub\logs\FailedReqLogFiles\SITE_ID\"
3. Настраиваем критерии фильтрации запросов
4. Идём в нужную папку и смотрим файлы трассировки запросов. Правило простое: 1 файл = 1 запрос. В IE8 и включённой эскалации прав пользователя стоят такие настройки, что просмотреть файл невозможно. Для XSLT преобразования запрещены и скрипты не отработают.
Идём в настройки браузера в Internet Security Properties. Trusted sites и добавляем к списку доверенных сайтов about:internet и тогда будет виден отчёт.
Смотреть лучше в IE т.к. визуализация производится с помощью XSLT шаблона.
В качестве уловки облегчающей жизнь можно посоветовать следующее: внутри файловой системы сайта сделать хардлинк на папку с логами и настроить basic аутентификацию. Тогда любой разработчик может не заходя на сервер может изучать файлы ошибок. Конечно если на сервере включена роль Терминал сервер, то ограничения на количество терминальных сессий у нас нет.
Большая часть документации по IIS7 на головном сайте IIS.net, дока по FREB - не исключение.
К сожалению, на английском языке. Довольно обстоятельная информация о том, что и где подкрутить, что бы работало пошустрее. Дока охватывает все роли 2008 сервера.
Performance Tuning for Server Hardware Performance Tuning for Networking Subsystem Performance Tuning for Storage Subsystem Performance Tuning for Web Servers Performance Tuning for File Servers Performance Tuning for Active Directory Servers Performance Tuning for Terminal Server Performance Tuning for Terminal Server Gateway Performance Tuning for Virtualization Servers Performance Tuning for File Server Workload (NetBench) Performance Tuning for Network Workload (NTttcp) Performance Tuning for Terminal Server Knowledge Worker Workload Performance Tuning for SAP Sales and Distribution Two-Tier Workload
Хочу рассказать, что в данный момент наш PHP продукт проходит тесты Certified for Windows Server 2008. Мы прошли все локальные тесты успешно.
Как оказалось, в режиме FastCgi, php, который non thread safe (есть такой для windows на странице скачивания), без EAccelerator-а, показал лучшие результаты по сравнению с обычным php, но c EAccelerator-ом.
Редакция "Эксперт" на нашей тестовой машине выдает 30 страниц в секунду и без единого отказа в течение 48 часов под stress тестом.
Сам Майкрософт крайне заинтересован в достижении лучших результатов, более того, мы, видимо, будем первым PHP продуктом достигшим такого высокого звания.
Тип группы Это открытая группа. В неё может вступить любой желающий. Это видимая группа. Ее наличие видно всем пользователям.
Основные положения 1. Обсуждается работа PHP-версии 1С-Битрикс на платформе Windows Server 2008 2. Тонкости настроек и методы решения различных ситуаций. 3. Это не техподдержка, поэтому не ожидайте быстрой реакции участников сообщества на заданный вами вопрос.
Примечания Если необходимо приложить иллюстрацию, то можно воспользоваться сервисом хранения изоборажений, к примеру - http://www.picamatic.com/ там не требуется никакой регистрации и он действительно удобен.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».