Что такое код iis #flastmod


Содержание

Установка и конфигурирование IIS

В большинстве случаев в реальных производственных проектах один или несколько серверов будут использоваться для обслуживания клиентских запросов веб-сайта. Эти серверы могут принадлежать и управляться непосредственно вами, специализированной командой или же сторонней компанией, предоставляющей услуги хостинга. В любом случае рано или поздно наступает момент, когда написание кода и его тестирование завершено, и работа должна быть представлена широкой публике — в этом и заключается развертывание веб-сайта.

В этой и следующих статьях мы рассмотрим различные варианты развертывания. Однако во всех случаях основные предпосылки остаются неизменными. На рабочей станции имеется готовый веб-сайт, который нужно развернуть на сервере, чтобы он был доступен клиентам. Для ASP.NET таким сервером является , а его текущей версией — IIS 8. Когда он был впервые реализован, IIS представлял собой базовый веб-сервер. С годами IIS развился в сложный сервер приложений, предоставляющий широкое множество функциональных средств, наиболее важным из которых является поддержка хостинга приложений ASP.NET.

В этой статье основное внимание уделяется IIS 8. Хотя машина, на которой запущен IIS 8, здесь называется сервером, IIS можно запускать под управлением версий Windows как для рабочей станции, так и для сервера. На рабочих станциях доступны не все, но большинство функциональных возможностей, что позволяет размещать сложные веб-сайты. По возможности мы рекомендуем использовать Windows Server, однако недорогой альтернативой могут послужить Windows 7 или Windows 8.

В Microsoft привязывают выпуски IIS с выпусками Windows. В состав Windows Server 2008 и Windows Vista входит версия IIS 7.0, в состав Windows Server 2008 R2 и Windows 7 — версия IIS 7.5, а в состав Windows Server 2012 и Windows 8 — IIS 8. Версии — 7.0 и 7.5 — в Microsoft обобщенно называют IIS 7, что может вносить путаницу. Версию IIS, поддерживаемую операционной системой, изменить нельзя — Windows Server 2008 будет использовать только IIS 7.0. Например, модернизировать ее до версии IIS 7.5, используемой в Windows Server 2008 R2, не получится.

Установка IIS

Компонент IIS включен как часть установки Windows (как для сервера, так и для рабочих станций) и требует активизации и конфигурирования. Далее представлены три способа активации IIS для различных операционных систем.

Установка IIS на настольных версиях Windows (Windows Vista, Windows 7 и Windows 8)

Каждая версия операционной системы Windows предлагает свою версию IIS — IIS 8 (в Windows 8), IIS 7.5 (в Windows 7) или IIS 7 (в Windows Vista). Во всех этих версиях Windows, IIS включен, но изначально не установлен. Чтобы установить его, необходимо выполнить следующие действия:

Откройте панель управления.

Нажмите кнопку «Включение или отключение компонентов Windows». Теперь вам нужно подождать, пока Windows исследует вашу систему.

Найдите элемент Internet Information Services (Службы IIS) в верхней части списка и нажмите на галочку чтобы включить его:

Обратите внимание, что Windows позволяет включить множество компонентов IIS: поддержка FTP-сервера, дополнительные инструменты управления, службы обратной совместимости с IIS 6 и т.д.

Убедитесь, что вы выбрали поддержку ASP.NET. Для этого раскройте узел Службы Интернета Компоненты разработки приложений ASP.NET (Internet Information Services World Wide Web Services Application Development Features ASP.NET):

Если вы хотите использовать поддержку IIS в Visual Studio, которая позволяет вам создавать виртуальные каталоги IIS непосредственно в диалоговом окне New Web Site, вам нужно выбрать пункт «Совместимость управления IIS 6» в разделе «Средства управления веб-сайтом» (Web Management Tools IIS 6 Management Compatibility).

Как только вы выбрали нужные параметры IIS, нажмите кнопку OK для завершения установки.

Установка IIS в Windows Server 2008

Установка и настройка IIS одинакова для Windows Server 2008 и Windows Server 2008 R2. Необходимые шаги описаны ниже:

Запустите диспетчер сервера. Чтобы сделать это, нажмите кнопку Start и выберите All Programs Administrative Tools Server Manager.

Выберите узел Roles в дереве слева.

В правой части окна нажмите на ссылке Add Roles. Это открывает мастер, позволяющий добавить новую роль сервера.

Выполните необходимые действия в мастере. Вас вероятно попросят установить дополнительные необходимые роли — если это так, нужно просто принять операции и продолжить.

После установки вам будет предложено настроить веб-сервер. Как в настольных версиях Windows, вы можете выбрать специфические особенности IIS 7, которые должны быть включены.

Если вы работаете в ASP.NET с версией .NET Framework 4.5, то эту версию .NET Framework необходимо будет установить (центр разработчиков .NET Framework)

Установка IIS в Windows Server 2012

Процесс установки IIS в Windows Server 2012, по существу, такой же, как и в Windows Server 2008. Основное различие заключается в том, что пользовательский интерфейс несколько отличается. Подробное описание вы можете найти перейдя по ссылке Installing IIS 8 on Windows Server 2012.

Управление IIS

При установке IIS, он автоматически создает каталог с именем C:\inetpub\wwwroot, который представляет ваш веб-сайт. Все файлы в этом каталоге будет отображаться, как будто они находятся в корневом каталоге вашего веб-сервера.

Чтобы добавить дополнительные страницы на ваш веб-сервер, можно скопировать файлы HTML, ASP или ASP.NET напрямую в каталог C:\Inetpub\wwwroot. Например если добавить файл TestFile.html в этот каталог, вы можете запросить его в браузере через URL-адрес http://localhost/TestFile.html. Вы даже можете создавать вложенные папки для группирования связанных ресурсов. Например, вы можете получить доступ к C:\inetpub\wwwroot\MySite\MyFile.html через браузер, используя URL-адрес http://localhost/MySite/MyFile.html.

Каталог wwwroot удобен для запуска простых примеров и статичных страниц. Для правильного использования ASP.NET вы должны сделать свой собственный виртуальный каталог для каждого веб-приложения, которое вы создаете. Например, вы можете создать папку с любым именем на любом диске вашего компьютера и поместить ее в виртуальный каталог IIS как будто она расположена в каталоге C:\inetpub\wwwroot.

Прежде чем начать работу, вам нужно запустить диспетчер служб IIS. Его можно найти в меню Start (Пуск). Конкретное расположение может зависеть от используемой версии Windows (IIS Диспетчер служб IIS). Ярлык программы будет располагаться в разделе Programs (Программы) или Administrative Tools (Администрирование). Начальная страница IIS Manager показана на рисунке ниже:

Теперь нужно ознакомиться с рядом терминов, используемых в IIS. В левой части окна IIS Manager отображается запись с именем используемого сервера. Наш сервер имеет имя PROFESSORWEB, сгенерированное по умолчанию Windows 8, которое будет использоваться в большинстве примеров. В центральной области отображается представление сервера. Это представление отображает набор значков, которые позволяют конфигурировать параметры сервера. В правой части экрана расположен список доступных действий. Например, в этом представлении можно запускать, останавливать и перезапускать сервер.

Если развернуть элемент сервера в древовидном представлении в левой части экрана, отобразится элемент Sites (Сайты), содержащий единственную запись Default Web Site (Веб-сайт по умолчанию). Сайт — это коллекция файлов и каталогов, образующих веб-сайт. На одном сервере IIS может поддерживать несколько сайтов, как правило, на различных портах TCP/IP (по умолчанию используется порт 80). Сочетание имени сервера и порта сайта образует первую часть URL-адреса. Например, при использовании сервера mywebserver с сайтом, подключенным к порту 80, URL-адрес выглядит следующим образом:

Каждый сайт может содержать множество файлов и каталогов. Каждый из них образует часть URL-адреса. Так, URL-адрес статической страницы mypage.html, расположенной в каталоге myfiles, будет следующим:

В некоторых ситуациях имя, под которым сервер известен вам, и имя, которое клиенты используют для получения содержимого, будут различаться. Мы оставим этот нюанс без внимания, но администратор сервера или компания, предоставляющая услуги хостинга, предоставят необходимые сведения, если это важно для конкретного сервера.

Чтобы проверить работоспособность IIS выберите Default Web Site и в правой области диспетчера служб IIS выберите пункт «Запустить». После этого нажмите кнопку «Обзор *.80 (http)» чтобы открыть страницу сайта в браузере:

Как видите, в моем случае я поменял порт используемый по умолчанию (с 80 на 8080). Я сделал это, т.к. на 80-м у меня запущен локальный Apache-сервер. Если у вас возникает такая же проблема, то изменить порт можно щелкнув правой кнопкой мыши по сайту (Default Web Site) и выбрав в контекстном меню «Изменить привязки» (Bindings). После этого в диалоговом окне можно изменить порт, используемый по умолчанию.

Итак, каждый сервер может поддерживать множество сайтов, каждый из которых работает на другом порту или с другим IP-адресом. Каждый сайт может иметь множество файлов и каталогов, и сочетание этих элементов предоставляет информацию о URL-адресе. Мы вернемся к URL-адресам и использованию IIS Manager при рассмотрении каждого из подходов к развертыванию.

Что такое код iis #flastmod

И снова здравствуйте.

> При проверке Web сервер определяется, а опубликованная база не находится.
Пожалуйста, уточните, что означает «база не находится».

Скриншот сообщения в файле Снимок1.

Попробовал исполнить Вашу инструкцию, получил следующее:

1. При публикации через Конфигуратор появилось сообщение Снимок2. NTFS-ные права на БД этой группе добавил.

Не помогло, при «проверке готовности компьютера» ошибка осталась таже «Не удалось найти публикацию базы!». Попробовал войти браузером на опубликованное приложение выдал ошибку про кривую библиотеку ISAPI. Методом проб и ошибок выснилось, что при установке IIS 8.5 «по умолчанию» не устанавливаются компонент «Расширения ISAPI».

2. Устоновил в IIS не достающий компонент «Расширения ISAPI». Опубликованная база опять не нашлась. Но при входе через браузер на публикацию ошибка стала другая.

Ошибка HTTP 500.0 — Internal Server Error

Невозможно отобразить эту страницу ввиду того, что произошла внутренняя ошибка сервера.

Подробные сведения об ошибке:

Обработчик 1C Web-service Extension

Код ошибки 0x800700c1

Запрошенный URL-адрес http://192.168.1.51:80/Money_101251

Физический путь C:\Inetpub\wwwroot\Money_101251

Метод входа Анонимная

Пользователь, выполнивший вход Анонимная

3. После нескольких часов экспериментов базу опубликовать удалось, путем установки галки «использовать аутентификацию операционной системы» при публикации через Кофигуратор.

При «проверке готовности компьютера» ошибок нет. Адрес в настройках 1С проверяется. При входе через браузер возникает следующая ошибка.

Ошибка HTTP 401.2 — Unauthorized

Вы не имеете права просматривать эту страницу из-за недопустимости заголовков проверки подлинности.

Подробные сведения об ошибке:

Модуль IIS Web Core

Обработчик 1C Web-service Extension

Код ошибки 0x80070005З

апрошенный URL-адрес http://192.168.1.51:80/Money_101251

Физический путь C:\Inetpub\wwwroot\Money_101251

Метод входа Пока не определено

Пользователь, выполнивший вход Пока не определено

4. Печальные итоги.

Остановился на двух неработающих вариантах.

Публикация без галки «использовать аутентификацию операционной системы» (Соответствует включенной в консоли IIS для опубликованного приложения «анонимной проверки подлинности»)

Сервис на компе не находится. При попытке синхронизации iPad ошибка в Миниденьгах, что не найден сервис синхронизации. Ощущение что где то на компе не хватает NTFS-ных прав, вроде перепробовал уже все.

Публикация с галкой «использовать аутентификацию операционной системы» (Соответствует отключенной в консоли IIS для опубликованного приложения «анонимной проверки подлинности»)

Сервис на компе находится, адрес проверяется. Но при сихронизации Миниденьги пишут ошибку «Неправильное имя или пароль пользователя настольного приложения». Экспериментировал с заведением пользователя в настольной 1С — ни какие варианты не помогли.

Скорее всего Миниденьги не корректно обрабатывают возвращаемую от сервиса ошибку, и проблема не в пользователе настольного приложения, а в том что запрещены анонимные подключения к сервису.

Подскажите что еще можно покопать и в каком варианте?

Что такое IIS

простыми словами

(Internet Information Services) — программное обеспечение для развертывания веб-сервера. Входит в состав Windows.

Поддерживает работу по протоколам HTTP, HTTPS, FTP, SMTP, POP3.

IIS можно установить не только на Windows Server, но и на клиентскую версию операционной системы. Например, в Windows 10 установка выполняется из оснастки «Программы и компоненты» включением встроенного компонента Службы IIS. Для развертывания более новой версии, IIS можно скачать с сайта Microsoft.

Настройка IIS производится в консоли «Диспетчер служб IIS». Она устанавливается на любой компьютер в сети, позволяя управлять сервером удаленно, либо ставится непосредственно, на веб-сервер.

Коды состояния служб IIS

Аннотация

При обращении пользователей к серверу, на котором запущены информационные службы Интернета (Internet Information Services, IIS), по протоколу HTTP или FTP (File Transfer Protocol), сервер возвращает число, показывающее состояние выполнения запроса. Данное число называется кодом состояния и сохраняется в журнале служб IIS, а также может отображаться веб-обозревателем или клиентом FTP. Код состояния показывает, выполнен ли запрос, а также может сообщать о причинах сбоя при выполнении запроса.

Дополнительная информация

Местонахождение файла журнала
По умолчанию файлы журналов служб IIS находятся в папке %WIN DIR\System32 \Logfiles. Данная папка содержит отдельные подкаталоги для каждого узла WWW (World Wide Web) и FTP. По умолчанию новый файл журнала создается ежедневно. Имя данного файла формируется, исходя из текущей даты (например exГГММДД.log). HTTP

1xx — Информационные коды

Перечисленные ниже коды состояния представляют собой предварительные ответы. Перед получением окончательного ответа клиент может получить один или несколько ответов с кодами состояния 1xx.

  • 100 — Следует продолжать работу.
  • 101 — Смена протоколов.

2xx — Запрос принят

Нижеперечисленные коды показывают, что сервер успешно принял запрос клиента.

  • 200 — ОК. Запрос выполнен успешно.
  • 201 — Создан ресурс.
  • 202 — Запрос принят.
  • 203 — Неавторизованные сведения.
  • 204 — Содержимое отсутствует.
  • 205 — Сброс содержимого.
  • 206 — Частичный ответ.

3xx — Перенаправление

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

  • 302 — Объект перемещен.
  • 304 — Объект не изменялся.
  • 307 — Временное перенаправление.

4xx — Ошибка на стороне клиента

Данные коды показывают, что по вине клиента возникла ошибка. Например, клиент мог запросить отсутствующую страницу или не предоставить сведения для проверки подлинности.

  • 400 — Неверный запрос.
  • 401 — Отсутствуют необходимые права доступа. Если возникает ошибка с кодом 401, то службы IIS возвращают расширенный код, указывающий причину ошибки. Это коды отображаются на экране веб-обозревателя, но не регистрируются в журнале служб IIS.
  • 401.1 — Вход в систему не выполнен.
  • 401.2 — Вход не выполнен из-за настройки сервера.
  • 401.3 — Доступ запрещен таблицей управления доступом (ТУД) к ресурсу.
  • 401.4 — Доступ запрещен фильтром.
  • 401.5 — Доступ запрещен приложением ISAPI/CGI.
  • 401.7 — Доступ запрещен политикой авторизации URL веб-сервера. Данный код поддерживается только службами IIS 6.0.
  • 403 — Запрет доступа. Если возникает ошибка с кодом 403, то службы IIS возвращают расширенный код, указывающий причину ошибки.
  • 403.1 — Нет доступа на выполнение.
  • 403.2 — Нет доступа на чтение.
  • 403.3 — Нет доступа на запись.
  • 403.4 — Требуется протокол SSL.
  • 403.5 — Требуется протокол SSL 128.
  • 403.6 — IP-адрес отклонен.
  • 403.7 — Требуется сертификат для клиента.
  • 403.8 — Отказ в доступе к узлу.
  • 403.9 — Подключено слишком много пользователей.
  • 403.10 — Недопусти мая конфигурация.
  • 403.11 — Необходим другой пароль.
  • 403.12 — Отказ доступа от программы сопоставления.
  • 403.13 — Клиентский сертификат отозван.
  • 403.14 — Просмотр каталога запрещен.
  • 403.15 — Достигнуто максимальное число разрешенных одновременных подключений.
  • 403.16 — Клиентский сертификат недействителен или не вызывает доверия.
  • 403.17 — Срок действия клиентского сертификата уже истек или еще не начался.
  • 403.18 — Не удается выполнить запрошенный адрес URL в текущем пуле приложения. Данный код поддерживается только с лужбами IIS 6.0.
  • 403.19 — Не возможно выполнять прило жения CGI для этого клиента в данном пуле приложений. Данный код поддерживается только службами IIS 6.0.
  • 403,20 — Вход систему с помощью служб Passport не выполнен. Данный код поддерживается только службами IIS 6.0.
  • 404 — Объект не найден.
  • 404.0 — (отсутствует) — Файл или каталог не найден.
  • 404.1 — Веб-узел не доступен по запрошенному порту.
  • 404.2 — Запрос отклонен политикой закрытия расширений веб-служб.
  • 404.3 — Запрос отклонен политикой сопоставления MIME.
  • 405 — Для доступа к странице используется недопустимый метод HTTP (недопустимый метод).
  • 406 — Веб-обозреватель клиента на поддерживает тип MIME запрошенной страницы.
  • 407 — Требуется проверка подлинности через прокси-сервер.
  • 412 — Отказ после проверки предварительного условия.
  • 413 — Размер запроса слишком велик.
  • 414 — Слишком длинный запрос URI.
  • 415 — Неподдерживаемый тип носителя.
  • 416 — Значение за пределами диапазона.
  • 417 — Ошибка при выполнении.
  • 423 — Ошибка блокировки.
  • Илон Маск рекомендует:  Что такое код odbc_free_result

    5xx — Ошибки сервера

    Данные к оды показывают, что сервер не может выполнить запрос, поскольку при выполнении возникла ошибка.

    • 500 — Внутренняя ошибка сервера.
    • 500.12 — Приложение в процессе перезапуска.
    • 500.13 — Сервер перегружен.
    • 500.15 — Запросы на файл Global.asa недопустимы.
    • 500.16 — Учетные данные не позволяют выполнить проверку подлинности при подключении к адресу UNC. Данный код поддерживается только службами IIS 6.0.
    • 500.18 — Не удается открыть хранилище данных авторизации URL. Данный код поддерживается только службами IIS 6.0.
    • 500.100 — Внутренняя ошибка ASP.
  • 501 — Значения, указанные в заголовке, требуют нереализованную возможность.
  • 502 — Выполняя роль шлюза или прокси, веб-сервер получил ошибочный ответ.
  • 502.1 — Превышен интервал ожидания ответа от приложения CGI.
  • 502.2 — Ошибка в приложении CGI.
  • 503 — Служба недоступна. Данный код поддерживается только службами IIS 6.0.
  • 504 — Превышен интервал ожидания ответа от шлюза.
  • 505 — Неподдерживаемая версия HTTP.
  • Основные коды состояния HTTP и их описание

    • 200 — Запрос выполнен успешно. Данный код показывает, что сервер IIS успешно обработал запрос.
    • 304 — Объект не изменялся. Клиент запросил документ, который имеется в кэше клиента и не изменялся после кэширования. Вместо загрузки документа с сервера клиент использует кэшированную копию данно го документ а.
    • 401.1 — Вход в систему не выполнен. При входе в системе произошел сбой (как правило, вследствие указания ошибочного имени пользователя или пароля).
    • 401.3 — Доступ запрещен списком управления доступом (ACL) к ресурсу. Появление данного кода свидетельствует о проблеме с разрешениями NTFS. Эта ошибка может возникать, даже если для запрашиваемого файла разрешения установлены правильно. Например, данная ошибка появляется, если для учетной записи IUSR отсутствуют права доступа к папке C:\Winnt\System32\Inetsrv. Дополнительные сведения об устранении данной ошибки см. в следующей статье базы знаний Майкрософт: 187506 (http://support.microsoft.com/kb/187506/) Разрешения NTFS и права пользователей, необходимые для работы сервера IIS 4.0
    • 403.1 — Нет доступа на выполнение. Как правило, данная ошибка возникает по следующим причинам.
    • Отсутствует право на выполнение. Например, данная ошибка может возникать при обращении к странице ASP, находящейся в папке, для которой отсутствуют разрешения на выполнение, или при запуске сценария CGI из папки, для которой установлены разрешения «Только сценарии». Чтобы добавить право выполнения, в соответствующей консоли MMC щелкните нужную папку правой кнопкой мыши, выберите пункт Свойства, перейдите на вкладку Каталог и убедитесь, что для требуемых объектов разрешения Разрешен запуск установлены должным образом.
      Используемый метод (например GET или POST) отсутствует в сопоставлении сценариев для требуемого типа файлов. Чтобы проверить, присутствует ли требуемый метод, в соответствующей консоли MMC щелкните нужную папку правой кнопкой мыши, выберите пункт Свойства, перейдите на вкладку Каталог, щелкните команду Конфигурация и убедитесь, ч то в сопоставлении сценариев для требуемого типа файлов разрешено использование соответствующего метода.
    • 403.2 — Нет доступа на чтение. Убедитесь, что в конфигурации служб IIS разрешено чтение из данной папки. Кроме того, если используется документ по умолчанию, убедитесь, что данный документ существует. Дополнительные сведения об устранении данной проблемы см. в следующей статье базы знаний Майкрософт: 247677 (http://support.microsoft.com/kb/247677/) Появление сообщения об ошибке «403.2 Запрет доступа. Нет доступа на чтение.»
    • 403.3 — Нет доступа на запись. Убедитесь, что существующие разрешения IIS и разрешения NTFS позволяют выполнять запись в нужную папку.Дополнительные сведения об устранении данной проблемы см. в следующей статье базы знаний Ма й крософт: 248072 (http://support.microsoft.com/kb/248072/) Появление сообщения об ошибке «403.3 Запрет доступа. Нет доступа на запись.»
    • 403.4 — Требуется протокол SSL. Отключите параметр Требует ся безопасный канал или используйте для доступа к данной странице протокол HTTPS, а не HTTP. Если эта ошибка появляется при обращении к веб-узлу, для которого не установлен сертификат, обратитесь к следующей статье базы знаний Майкрософт: 224389 (http://support.microsoft.com/kb/224389/) Появление сообщений об ошибках 403, 403.4, 403.5 «Запрет доступа. Требуется протокол SSL.»
    • 403.5 — Требуется протокол SSL 128. Отключите параметр Требуется 12 8 -и разрядное шифрование или используйте для просмотра данной страницы веб-обозреватель, поддерживающий 128-разрядное шифрование. Если эта ошибка появляется при обращении к веб-узлу, для которого не установлен сертификат, обратитесь к следующей статье базы знаний Майкрософт: 224389 (http://support.microsoft.com/kb/224389/) Появление сообщений об ошибках 403, 403.4, 403.5 «Запрет доступа. Требуется протокол SSL.»
    • 403.6 — IP-адрес отклонен. Конфигурация веб-сервера запрещает доступ с да нн ого IP-адреса. Дополните льные сведения об устранении данной проблемы см. в следующей статье базы знаний Майкрософт: 248043 (http://support.microsoft.com/kb/248043/) При подключении к веб-серверу появляется сообщение об ошибке: «Ошибка HTTP 403.6 — Запрет доступа: IP-адрес отклонен»
    • 403.7 — Требуется сертификат для клиента. Конфигурация веб-сервера требует наличие сертификата для выполнения проверки подлинности клиента, однако серт ификат для клиента не установлен. Дополнительные сведения см. в следующих статьях базы знаний Майкрософт. 190004 (http://support.microsoft.com/kb/190004/) Появление сообщения об ошибках 403.7 или «Не удается установить соединение с сервером» 186812 (http://support.microsoft.com/kb/186812/) PRB: Появление сообщения об ошибке «403.7 Запрет доступа. Требуется сертификат для клиента.»
    • 403.8 — Отказ в доступе к узлу. Существующие ограничения на доменное имя запрещают доступ к веб-узлу из текущего домена.Дополнительные сведения об устранении данной проблемы см. в следующей статье базы знаний Майкрософт: 248032 (http://support.microsoft.c om/kb/248032/) Появление сообщения об ошибке «403.8 Запрет доступа. Отказ в доступе к узлу.»
    • 403.9 — Подключено слишком много пользователей. Число пользователей, подключенных к веб-узлу, превысило максимально допустимое число подключений, указанное в конфигурации. Дополнительные сведения об изменении данного значения см. в следующей с тать е базы знаний Майк ро софт: 248074 (http://support.microsoft.com/kb/248074/) Ошибка HTTP 403.9 — Запрет доступа: подключено слишком много пользователей Примечание. Microsoft Windows 2000 Professional и Microsoft Windows XP Professional допускают одновременное подключение к службам IIS десяти пользователей. Это значение изменить нельзя.
    • 403.12 — Отказ доступа от программы сопоставления. Для доступа к запрошенной странице необходим сертификат клиента, однако пользователь, сопоставленный используемому клиентскому сертификату, не имеет прав доступа к данному файлу. Дополнительные сведения см. в следующей статье базы знаний Майкрософт: 248075 (http://support.microsoft.com/kb/248075/) Появление сообщения об ошибке «403.12 Запрет доступа. Отказ до с тупа от программы сопоставления.»
    • 404 — Объект не найден. Данная ошибка может возникать, если запрошенный файл был удален или перемещен. Кроме того, указанное сообщение об ошибке появляется, если после установки средства URLScan был ограничен доступ к файлам с запрошенным расширением. В этом случае в файле журнала для данного запроса будет добавлена строка «Rejected by URLScan».
    • 500 — Внутренняя ошибка сервера. Данное сообщение об ошибке может появляться вследствие различных причин. Дополнительные сведения о причинах подобных ошибок могут помещаться в журнал событий. Кроме того, для получения полного описания ошибки можно отключить вывод подробных сообщений об ошибках HTTP. Дополнительные сведения об отключении вывода подробных сообщений об ошибках HTTP см. в следующей статье базы знаний Майкрософт: 294 807 (http://support.microsoft.com/kb/294807/) Отключение параметра «Выводить подробные сообщения об ошибках http» в обозревателях Internet Explorer 5.x и 6.x на стороне сервера
    • 500.12 — Приложение в процессе перезапуска. Данное сообщение появляется при попытке загрузить страницу ASP в то время, когда сервер IIS перезапускает приложение. После обновления страницы данное сообщение должно исчезнуть. Если после обновления страницы указа нно е сообщение остается, то это может быть вызвано работой антивирусной программы, которая проверяет файл Global.asa. Дополнительные сведения см. в следующей статье базы знаний Майкрософт: 248013 (http://support.microsoft.com/kb/248013/) Сообщение «Ошибка HTTP 500-12 Перезапуск приложения» при подключении к Microsoft Internet Information Services 5. 0
    • 500-100.ASP — Внутренняя ошибка ASP. Данное сообщение об ошибке появляется при загрузке страницы ASP, содержащей ошибки. Чтобы получить более полную информацию о данной ошибке, отключите вывод подробных сообщений об ошибках HTTP. По умолчанию данная ошибка может появляться только на веб-узле по умолчанию.Дополнительные сведения о том, как увидеть данную ошибку на веб-узлах, не являющихся узлами по умолчанию, см. в следующей статье базы знаний Майкрософт: 261200 (http://support.microsoft .com/kb/261200/) Вместо сообщения об ошибке из файла 500-100.asp отображается сообщение об ошибке HTTP с кодом 500
    • 502 — Неправильный шлюз. Данное сообщение об ошибке появляется при запуске сценария CGI, не возвращающего соответствующий набор заголовков HTTP.

    1xx — Положительный предварительный ответ

    Данный код состояния говорит о том, что выполнение действия началось успешно, но перед переходом к новой команде клиент должен дождаться следующего ответа.

    • 110 Значение маркера повторного запуска.
    • 120 Служба будет готова через ххх минут.
    • 125 Соединение для передачи данных уже уст ановл ено; передача данных начата.
    • 150 Состояние файла проверено. Сервер готов к установке соединения для передачи данных.

    2xx — Оповещение о выполнении команды

    Действие завершилось успешно. Клиент может выполнять следующую команду.

    • 200 Команда выполнена успешно.
    • 202 Команда не реализована. На данном узле к о манда не тре буется.
    • 211 Состояние системы или справка по системе.
    • 212 Состояние каталога.
    • 213 Состояние файла.
    • 214 Справочное сообщение.
    • 215 ИМЯ тип системы, где ИМЯ — официальное имя системы в соответствии с документом о присвое нии номеров.
    • 220 Система готова обслуживать нового пользователя.
    • 221 Служба разрывает управляющее соединение. Если необходимо, будет произведен выход из системы.
    • 225 Соединение для передачи данных установлено; передача не выполняется.
    • 226 Соединение для передачи данных разрывается. Требуемое действие выполнено (например пере да ча или прекращение переда чи файла).
    • 227 Выполняется вход в пассивный режим (h1,h2,h3,h4,p1,p2).
    • 230 Пользователь вошел в систему. Производится обработка.
    • 250 Требуемое действие завершено успешно.
    • 257 Создана папка «ПУТЬ».

    3xx — Положительные промежуточные ответы

    Данные коды состояния говорят о том, что команда выполнена успешно, но для завершения выполнения запроса клиент должен передать серверу дополнительные сведения.

    • 331 Имя пользователя получено. Необходимо ввести пароль.
    • 332 Необходима учетная запись для входа в систему.
    • 350 Для выполнения запрашиваемого действия требуются дополнительные данные.

    4xx — Промежуто ч ные отрицательные ответы

    При выполнении команды возникла временная ошибка. Если клиент повторит команду, она может выполниться успешно.

    • 421 Служба недоступна. Управляющее соединение разрывается. Данное сообщение может отправляться в ответ на какую-либо команду, если служба должна завершить работу.
    • 425 Не удается установить соединение для передачи данных.
    • 426 Соединение разорвано; передача прекращена.
    • 450 Требуемое действие не выполнено. Файл недоступен (например, файл может быть занят).
    • 451 Выполнение требуемого действия прервано: при выполнении возникла ошибка.
    • 452 Требуемое действие не выполнено. Системе не хватает места на диске.

    5xx — Окончательные отрицательные ответы

    При выполнении команды возникла ошибка. Данная ошибка носит постоянный характер. Если клиент повто рит команду, при ее выполнении возникнет такая же ошибка.

    • 500 Синтаксическая ошибка. Команда не распознана. Одной из причин возникновения этой ошибки является использование слишком длинных команд.
    • 501 Синтаксическая ошибка в аргументах или параметрах.
    • 502 Команда не реализована.
    • 503 Ошибочная последовательность команд.
    • 504 Для данного параметра команда не реализована.
    • 530 Не выполнен вход в систему.
    • 532 Необходима учетная запись для сохранения файлов.
    • 550 Требуемое действие не вы п олнено. Файл недоступен (например, файл не найден или нет доступа к файлу).
    • 551 Выпо лнение требуемого действия прервано. Неизвестный тип страницы.
    • 552 Выполнение требуемого действия прервано. Превышен максимально допустимый объем места на диске (в текущей папке или в наборе данных).
    • 553 Требуемое действие не выполнено. Недопустимое имя файла.

    Основные коды состояния FTP и их описание

    • 150 — Протокол FTP использует два порта: порт 21 для передачи команд и порт 20 для передачи данных. Код состояния 150 показывает, что сервер собирается установить новое соединение на порту 20 для передачи данных.
    • 226 — Команда устанавливает подключение к порту 20, чтобы выполнить какие-либо действия (например передать файл). Данное действие было завершено успешно. Соединени е разорвано.
    • 230 — Сообщение с этим кодом появляется после отправки клиентом правильного пароля. Данный код состояния показывает, что пользователь вошел в систему.
    • 331 — Сообщение с этим кодом появляется после отправки клиентом имени пользователя. Это сообщение появляется независимо от того, присутствует ли в системе указанное имя пользователя.
    • 426 — Команда устанавливает подключение к порту 20, чтобы выполнить какие-либо действия, однако выполнение действия было отменено и соединение было разорвано.
    • 530 — Данный код состояния показывает, что пользователь не может войти в систему, поскольку введена ошибочная комбинация имени пользователя и пароля. Если для входа в систему используется учетная запись пользователя, то данное сообщение может появляться, если имя пользо вателя или пароль введены н еправильно или если в систем у могут входить только анонимные пользователи. Если для входа в систему используется анонимная учетная запись, то данное сообщение может появляться, если сервер IIS не поддерживает вход анонимных пользователей.
    • 550 — Команда не выполнена, поскольку требуемый файл недоступен. Данное сообщение может появляться при попытке получить отсутствующий файл с помощью команды GET, при использовании команды PUT для сохранения файла в папке, для которой отсутствует право записи, а также в некоторых других случаях.

    Как установить Web сервер IIS 10 в Windows Server 2020?

    Сегодня мы с Вами научимся устанавливать веб сервер IIS в операционной системе Windows Server 2020 нескольким способами, а именно с помощью графического инструмента и, конечно же, с помощью Windows PowerShell.

    Илон Маск рекомендует:  Криптографические средства защиты (шифрование) информации

    Что такое IIS 10?

    IIS (Internet Information Services) — это набор служб, предназначенный для реализации web сервера в операционной системе Windows с поддержкой сайтов HTML и приложений на ASP.NET или ASP. В Windows Server он распространяется в виде отдельной роли с достаточно большим количеством служб роли. Ранее в материале «Описание и назначение ролей сервера в Windows Server 2020» мы рассмотрели краткое описание всех ролей сервера и их служб, в том числе и роли «Веб-сервер (IIS)» поэтому повторяться сейчас, т.е. описывать каждую из служб роли, я не буду.

    В актуальной на данный момент версии серверной операционной системе Windows Server 2020 присутствует также самая новая версия веб сервера, а именно – IIS 10.

    Версии веб сервера IIS

    Версия IIS Версия операционной системы
    10 Windows 10; Windows Server 2020
    8.5 Windows 8.1; Windows Server 2012 R2
    8.0 Windows 8; Windows Server 2012
    7.5 Windows 7; Windows Server 2008 R2
    7.0 Windows Vista; Windows Server 2008
    6.0 Windows Server 2003
    5.1 Windows XP Professional
    5.0 Windows 2000

    Установка Web сервера IIS 10

    Итак, давайте переходить к рассмотрению процесса установки, и для примера давайте просто установим основные компоненты, которые необходимы для функционирования веб сервера и его администрирования (средства управления), а также разместим на нем простую HTML страничку, т.е. по сути HTML сайт, для проверки работы web сервера. Если Вам необходимо размещать приложения, например на ASP.NET, то Вам необходимо также установить соответствующие службы роли из раздела «Разработка приложений».

    Установка веб сервера IIS с помощью мастера

    Сначала давайте разберем процесс установки web сервера IIS 10 с помощью «Диспетчера серверов», а конкретней «Мастера добавления ролей и компонентов».

    Шаг 1

    Открываем диспетчер серверов «Пуск ->Диспетчер серверов».

    Затем запускаем «Мастер добавления ролей и компонентов», меню «Управление ->Добавить роли и компоненты».

    Шаг 2

    Шаг 3

    Потом выбираем тип установки «Установка ролей или компонентов», жмем «Далее».

    Шаг 4

    Затем выбираем целевой сервер и жмем «Далее».

    Шаг 5

    На шаге выбора ролей отмечаем роль «Веб-сервер (IIS)». Автоматически Вам сразу предложат установить компонент «Консоль управления службами IIS», мы соглашаемся и жмем «Добавить компоненты».

    И сразу жмем «Далее».

    Шаг 6

    Все необходимые компоненты мы уже отметили, поэтому на этом шаге также сразу жмем «Далее».

    Шаг 7

    Теперь нам необходимо настроить установку роли «Веб-сервер IIS», сначала жмем «Далее».

    А потом выбираем необходимые службы роли, по умолчанию минимальное количество служб уже будет выбрано, но если Вам нужно что-то еще, то отмечаете их галочкой. Для нашей тестовой задачи, т.е. разместить простой статический HTML сайт, отмеченных по умолчанию служб будет достаточно, жмем «Далее».

    Шаг 8

    Проверяем выбранные роли, службы и компоненты и жмем «Установить».

    Установка будет завершена, как появится соответствующее сообщение.

    Установка web сервера IIS с помощью Windows PowerShell

    Для того чтобы установить web сервер IIS с помощью PowerShell запускайте оболочку Windows PowerShell и вводите следующие команды (перечисленные ниже команды установят все те же службы, которые мы установили с помощью мастера чуть выше).

    Документ по умолчанию

    Ведение журнала http

    Сжатие статического содержимого

    Консоль управления службами IIS

    Размещаем HTML сайт на веб сервере IIS

    Первое что нужно сделать — это создать корневую директорию нашего тестового сайта, для этого в каталоге С:\inetpub\ создаем папку TestSite и в нее для проверки добавляем файл index.html со следующим содержимым, например

    Затем открываем «Диспетчер служб IIS», это можно сделать, например, из диспетчера серверов «Средства ->Диспетчер служб IIS».

    Потом щелкаем правой кнопкой мыши по пункту «Сайты ->Добавить веб-сайт».

    Откроется окно добавления веб сайта, заполняем необходимые поля и жмем «ОК» (TestSite в моем случае это название сайта).

    Теперь можем проверить работу веб сервера и только что созданного сайта, для этого открываем любой веб браузер и переходим на сайт TestSite (только помните, для того чтобы у Вас также как у меня открылся сайт по имени, он должен быть добавлен на DNS сервере (создана A запись) или хотя бы для тестов добавлена запись в файл HOSTS локального сервера).

    Удаление веб сервера IIS с помощью мастера

    Для удаления web сервера IIS открываем диспетчер серверов, затем в меню нажимаем «Управление ->Удалить роли и компоненты».

    В итоге запустится «Мастер удаления ролей и компонентов», где мы делаем практически то же самое, что и при установке, только галочки мы не ставим, а снимаем.

    Затем мы жмем далее, далее и удалить. После окончания процесса удаления веб сервера сервер необходимо будет перезагрузить.

    Удаление web сервера IIS с помощью PowerShell

    Для удаления web сервера IIS на PowerShell запускаем оболочку Windows PowerShell и используем командлет Uninstall-WindowsFeature. Для удаления следующих служб ролей веб сервера IIS, можно использовать вот такие команды:

    Документ по умолчанию

    Ведение журнала http

    Сжатие статического содержимого

    Консоль управления службами IIS

    Вот мы с Вами и научились устанавливать и удалять web сервер IIS в операционной системе Windows Server 2020 и на этом у меня все, пока!

    Безопасность активного содержимого

    Коммерческие сайты, особенно сайты электронной коммерции, требуют регулярного обновления информации о ценах на продукты, о специальных предложениях или нуждаются в интерактивных веб-страницах, структура которых зависит от запроса, полученного веб-сервером. Динамическое или активное содержимое позволяет изменять страницы для отображения результатов поиска или вывода информации, взятой из базы данных . На HTML -страницах можно разместить сложные объекты – фильмы и Java-апплеты. Динамическое содержимое «оживляет» сайты, делает их более интересными и успешными. Активное содержимое обеспечивает индивидуальный подход к каждому пользователю. Однако с точки зрения безопасности статический сайт более защищен, так как активное содержимое требует наличия еще одной службы IIS , что ведет к появлению новых уязвимых мест.

    Динамическое содержимое обеспечивает успех сайта электронной коммерции, на страницах которого отображаются последние сведения о ценах и товарах, а пользователи ищут необходимые товары и сразу же приобретают их. Динамическое содержимое используется и в интрасети организации, публикующей внутренний перечень номеров телефонов. Если эти записи берутся из базы данных , все изменения, вносимые сотрудниками, немедленно отражаются в интерактивном перечне сразу после обновления базы данных , без редактирования страниц вручную.

    В IIS при автоматическом создании веб-страниц данные передаются другому приложению для обработки, после чего они возвращаются на веб-страницу (например, номер подтверждения заказа). Метод передачи данных в прямом и обратном направлениях между сервером и приложением называется общим шлюзовым интерфейсом ( CGI ), и основополагающим механизмом CGI является HTTP . К сожалению, мощь и функциональные возможности этой технологии негативно влияют на общую безопасность , так как они в буквальном смысле создают шлюз на вашем сервере. CGI функционирует независимо, и защита IIS на него не распространяется.

    Администратору IIS необходимо реализовать доставку активного содержимого , причем не в ущерб безопасности сервера IIS ; этим вопросам и посвящена данная лекция.

    Технологии активного содержимого

    CGI , ASP и Perl являются самыми распространенными технологиями, используемыми в IIS для обеспечения активного содержимого . ASP (Активные страницы сервера) является технологией серверной части, разработанной Microsoft, которая позволяет комбинировать HTML , сценарии и компоненты многоразового пользования ActiveX или COM для создания динамических веб-страниц. Решение о создании генерируемого сервером содержимого в IIS принимается веб-разработчиками. Давайте рассмотрим создание ASP с помощью CGI .

    Общий шлюзовой интерфейс

    Технология CGI представляет собой мощную систему, на компьютерах UNIX с ее помощью создается веб-содержимое в реальном времени. Однако каждое приложение является скомпилированной программой, и поэтому каждый раз после внесения изменений требуется перекомпиляция исполняемого файла. Для этого разработаны языки сценариев серверной части, интерпретируемые и исполняемые машиной сценариев с результирующими выходными данными, отправляемыми в приложение веб-сервера через CGI .

    Сценарии CGI используются для расширения возможностей веб-серверов, чаще всего для обработки форм. Сценарий выступает в роли моста между ресурсом и сервером; ресурсом в данном случае является объект , обеспечивающий работу службы, например, программа электронной почты или база данных . Сценарий переводит предоставляемую ресурсом информацию в HTML -формат, чтобы сделать ее читабельной для запрашивающего браузера. Это расширяет возможности веб-сервера для обработки информации из всевозможных источников, расположенных на различных узлах.

    Информация передается приложению CGI посредством указания имени приложения в адресе URL . Например:

    Windows 7 x64, IIS, ISAPI и DataSnap XE2 в картинках.

    Сегодня решил немного побаловаться с DataSnap XE2, разработать небольшую ISAPI-dll и посмотреть как всё это будет работать под управлением моей Windows 7 x64. Надо сказать, что простейший примерчик такого приложения собрался и заработал почти без проблем. Как Вы наверняка знаете, наиболее часто для выполнения операций на сервере используется интерфейс CGI, CGI-скрипты и т.д. Однако компания Microsoft в свое время предложила свой вариант исполнения серверных программ, который называется ISAPI (Internet Server API). В первую очередь ISAPI предназначался для подключения к web-серверу Microsoft под названием Internet Information Server (IIS). Программы ISAPI представляют собой давно известные нам динамически загружаемые библиотеки DLL, которые вызываются Web-сервером, загружаются в память и становятся как бы частью этого Web-сервера, расширяя или изменяя его функциональность. Сейчас для сервера Apache (самого популярного web-сервера) имеется модуль mod_isapi.dll, который позволяет запускать ISAPI-dll. Вообще, если рассуждать о популярности того или иного веб-сервера, то лучше всего начать с посещения вот этого сайта, но мы сегодня не об этом и даже не о том кто круче/быстрее/удобнее IIS или Apache, а о том как написать программку, которая заработает под управлением IIS 7.5 в Windows 7 x64.

    Содержание статьи:

    Начнем с того, что настроим наш web-сервер IIS.

    Установка и настройка IIS в Windows 7

    проходит следующим образом: 1. Заходим в «Панель управления -> Программы и компоненты» и выбираем «Включение или отключение компонентов Windows»: 2. В открывшемся окне ищем «Службы IIS» и выбираем следующие необходимые компоненты для установки. Т.к. мне сегодня пришлось достаточно много экспериментировать с IIS, то мой список установленных компонентов оказался таким: 3. Жмем «Ok» и терпеливо ожидаем окончания установки. На этом шаге установка IIS завершена и можно приступать к настройке web-сервера, созданию и тестированию сайта. И здесь может проявиться то самое «почти» без которого я бы мог в начале поста сказать, что «примерчик такого приложения собрался и заработал почти без проблем«. Итак: 4. Заходим в «Панель управления -> Администрирование» и находим там «Диспетчер служб IIS«: Вот здесь и настраивается будущий сайт. По умолчанию, после установки компонентов у Вас на диске C:\\ появится дирректория c:\inetpub\ в которой будут храниться служебные файлы сервера и файлы сайта(-ов), с которыми вы будите работать. При установке в диспетчере уже будет находится один дефолтный сайт, но мы, для порядка создадим свой. 5. В дереве «Подключения» выбираем узел «Сайты», вызываем контекстное меню и выбираем «Добавить веб-сайт…»: 6. В открывшемся окне задаем настройки нашего сайта. На рисунке ниже показаны, которые практически не отличаются от дефолтных (различается только название сайта и его физическое расположение): Теперь в дереве подключений у Вас появился новый сайт «DataSnapSite» который по-идее должен бы запускаться с URL ‘http://localhost’, но, как оказалось, происходит это не всегда: Покопался по Сети в поисках ответа. Оказалось, что у кого-то сайт с такими настройками, как показано выше, работал без проблем, у других — через раз возникали проблемы с ASP.NET у кого-то, как и у меня, сайт вообще не открывался. Может причина в версии IIS, а может и нет, но для себя я нашел два возможных варианта решения этой проблемы: вариант 1: смотрим приложения, которые «слушают» 80-й порт — это могут быть Skype, TeamViewer и другие программки, работающие с сетью. Отключаем эти программы, перезагружаем IIS и снова пробуем зайти на сайт в браузере. вариант 2: если первый вариант не помог, то идем в IIS диспетчере в «Подключения», выбираем наш сайт и меняем ему привязку, на, например, вот такую: можете также, если необходимо, сменить и порт. После этого сайт должен заработать — можете бросить в корневую директорию сайта файлик index.html и посмотреть на него в браузере: Сайт заработал и на текущем этапе работы нам этого будет достаточно. Мы ещё вернемся к работе с диспетчером IIS и посмотрим, какие ещё возможные проблемы могут возникнуть, а пока идем в Delphi и создаем наше первое приложение ISAPI с DataSnap XE2.

    Создаем заготовку ISAPI DLL

    Запускаем Delphi и выбираем «File -> New -> Other -> DataSnap Server -> DataSnap WebBroker Application«: В первом шаге помощника выбираем третий пункт — «ISAPI dynamic link library» и жмем Next: На втором и третьем шаге можно оставить все установки по умолчанию. В итоге в менеджере проектов появится новый проект с таким содержанием: ServerMethodsUnit1, как уже понятно из названия будет содержать серверные методы, а модуль WebModule1 содержать компоненты, которые с помощью которых наша ISAPI-dll станет сервером DataSnap и модуль будет выглядеть вот так: Можно сказать, что уже то, что было сделано с использованием помощника — это уже готовая к использованию DLL. Но, пока не будем сильно спешить, а посмотрим на содержимое нашей DLL. Открываем исходный код библиотеки и видим, что наша DLL экспортирует три метода:

    Использование FastCGI для хостинга PHP приложений на IIS 7.0

    Использование FastCGI для хостинга PHP приложений на IIS 7.0

    Автор: Руслан Якушев

    Данная статья описывает конфигурацию модулей FastCGI и PHP для хостинга PHP приложений на IIS 7.0

    Важно: Данная статья содержит инструкции по установке компонента FastCGI в операционных системах Windows Server 2008 и Windows Vista SP1. Обратите внимание: на Windows Vista должен быть установлен SP1.

    Содержание

    • Краткий Обзор
    • Включение поддержкиFastCGIвIIS7.0
      • Windows Server 2008
      • Windows Vista SP1
      • Обновление модуляFastCGI
      • Administration Pack для IIS 7.0
    • Установка и настройка PHP
    • НастройкаIIS7.0 для обработкиPHPзапросов
      • Используя консоль управления IIS
      • Используя командную строку
    • Рекомендуемые руководства по конфигурированиюFastCGIиPHP
      • Безопасная изоляция для PHP Web сайтов
      • Режим рециркуляцииPHPпроцессов
      • Версионность PHP
      • Рекомендации по безопасностиPHP
    • Конфигурирование PHP на уровне сайтов
    • МодульURLrewritingдляPHPприложений
    • Полезные ресурсы

    Благодаря модулю FastCGI в IIS поддерживается большинство популярных приложений коллективной работы, которые используют протокол FastCGI для хостинга на Web сервере IIS высокопроизводительных и надёжных средств. FastCGI предоставляет высокопроизводительную альтернативу CGI (Common Gateway Interface), стандартного средства, являющегося интерфейсом между внешними приложениями и Web серверами, которые поддерживаются как часть возможностей IIS начиная с первых версий сервера.

    Программы CGI выполняются на сервере при каждом запросе, это позволяет обработать запросы, динамически сгенерировать ответы и возвратить их обратно клиентам. Из-за того, что многие приложения коллективной работы не поддерживают исполнения сразу нескольких потоков, CGI позволяет надежно исполненять нескольких процессов под управлением IIS, обрабатывая по одному запросу на процесс. К сожалению это приводит к снижению производительности из-за высоких накладных расходов связанных с необходимостью запуска и остановки процессов при обработке каждого запроса.

    Илон Маск рекомендует:  Http сообщение rfc 2068

    FastCGI является более производительным по сравнению с CGI, механизм его работы выглядит так – один и тот же процесс используется для обработки множество поступивших запросов. FastCGI так же поддерживает работу с библиотеками не умеющими безопасно работать в многопоточной среде. При работе с набором повторно используемых процессов мы можем быть уверены в том, что каждый процесс будет обрабатывать не более одного запроса в каждый момент времени.

    Добавьте роль CGI сервиса через меню Server Manager -> Roles -> Add Role Services. Этим мы включим поддержку двух сервисов CGI и FastCGI:

    Windows Vista SP1

    Добавьте расширение CGI, используя Control Panel -> Programs and Features -> Turn Windows features on or off. Этим мы включим поддержку двух сервисов CGI и FastCGI:

    Важно: Установка обновлений для модуля FastCGI

    Установка пакета администрирования для IIS 7.0

    Примечание: Данный шаг не обязателен (опционален).

    Из большого числа полезных функций административного пакета IIS 7.0 можно выделить интерфейс конфигурирования модуля FastCGI. Административный пакет может быть установлен из следующих источников:

    • Административный пакет для IIS 7.0 CTP2 — x86
    • Административный пакет для IIS 7.0 CTP2 — x64

    Установка и настройка PHP

    Рекомендуется использовать сборку non-thread safe PHP с модулем FastCGI сервера IIS 7.0. Эта сборка PHP дает значительный прирост производительности в отличие от стандартной сборки, т.к не производит проверок thread-safety, которые не требуются, так как сам FastCGI гарантирует однопоточное исполнение процессов, в окружении сервера.

    1. Загрузите последнюю версию non-thread safe пакета, включая бинарные файлы, по следующей ссылке http://www.php.net/downloads.php.
    2. Распакуйте файлы в директорию (например C:\PHP). Переименуйте файл php.ini-recommended в php.ini.
    3. Откройте переименованный файл php.ini, уберите комментарии с нижеперечисленных строк и измените значения в соответствии с предложенными:
      • Установите fastcgi.impersonate= 1. Модуль FastCGI для IIS может исполнять роль выдачи ключей безопасности для вызовов клиента. Это позволяет IIS определять контекст безопасности для выполняемых запросов.
      • Значение cgi.fix_pathinfo=1. cgi.fix_pathinfo обеспечивает поддержку *реальных путей* PATH_INFO/PATH_TRANSLATED для CGI. В предыдущих версиях PHP значение PATH_TRANSLATED указывало на SCRIPT_FILENAME, и не затрагивало директивы PATH_INFO. Дополнительную информацию о PATH_INFO смотрите в документации cgi. Установка данного значения в 1 решает проблему задаваемых путей PHP CGI изменяя пути так чтобы они соотвествовали спецификации.
      • Установите cgi.force_redirect = 0.
      • Установите для директивы open_basedir путь к папке или сетевому ресурсу на котором расположены Web сайт(ты).
      • Директива extension_dir определяет расположение расширений для PHP. Обычно, для PHP версий 5.2.X значение для данной директивы устанавливается в extension_dir= «./ext«
      • Для включения необходимых расширений PHP уберите комментарии в файле php.ini с соответствующих строчек, к примеру:
        extension=php_mssql.dll
        extension=php_mysql.dll
    4. Для проверки удачной установки PHP выполните следующую команду:

    Если PHP вместе со всеми компонентами от которых он зависит был установлен корректно, то данная команда выдаст информацию о текущей конфигурации PHP.

    Настройка IIS 7.0 для обработки PHP запросов

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

    Прим.переводчика: при запросе клиентом файла с расширением *.php с Web сайта/сервера, расположенного на IIS 7.0, сервер будет «отдавать» обработку php файлов приложению, отвечающему за обработку php файлов.

    Используя консоль управления IIS

    Откройте IIS Manager и выберете “Handler Mappings” на уровне управления сервером:

    Запустите “Add Module Mapping” для конфигурации, представленной на рисунке ниже:

    Нажмите OK. На запрос о создании приложения FastCGI нажмите Yes.

    Протестируйте корректную привязку заголовков, созданием файла phpinfo.php в папке C:\inetpub\wwwroot, используя следующий код:

    Откройте браузер и перейдите по ссылке http://localhost/phpinfo.php. Если установка прошла корректно, то вы увидите стандартную страницу конфигурации PHP:

    Примечание: Если Вы не видите в списке модулей «FastCgiModule», то это означает, что модуль не зарегистрирован, либо не включен. Для того, чтобы проверить, зарегистрирован ли модуль FastCGI откройте конфигурационный файл IIS по следующему адресу: %WINDIR%\windows\system32\config\applicationHost.config и проверьте присутствие значения в следующей секции:

    Также, в этом же файле, убедитесь в том, что модуль FastCGI добавлен в секцию :

    Используя командную строку

    Альтернативой предыдущим шагам может служить использование команды appcmd.

    Для создания пула приложений FastCGI выполните следующую команду:

    C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath=’c:\\php-cgi.exe’]

    После этого создайте привязку заголовков:

    C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /+[name=’PHP_via_FastCGI’,path=’*.php’,verb=’*’,modules=’FastCgiModule’,scriptProcessor=’c:\\php-cgi.exe’,resourceType=’Unspecified’]

    Примечание: Если вы используете PHP версий 4.X,то вместо php-cgi.exe необходимо использовать php.exe.

    Рекомендуемые руководства по конфигурированию FastCGI и PHP

    Данная ссылка содержит zip архив с файлом презентаций руководств, по разворачиванию хостинга PHP приложений в среде общего хостинга .

    Безопасная изоляция для PHP Web сайтов

    Рекомендации по изоляции PHP Web сайтов в среде общего хостинга согласуются с общей безопасностью изоляции, рекомендованной для IIS 7.0. В особенности следует обратить внимание на следующее:

    • Используйте один пул приложений на один Web сайт
    • Используйте выделенный аккаунт пользователя для пула приложений
    • Используйте анонимного пользователя для идентификации пула приложений
    • Убедитесь в том, что реализация FastCGI включена в файле php.ini (fastcgi.impersonate=1)

    Более подробно о безопасной изоляции в окружении общего хостинга написано в документации «Изолирование сайтов с пулами приложений»

    Режим рециркуляции PHP процессов

    Убедитесь в том, что FastCGI всегда рециркулирует (перезагружает — прим.перевод) процессы php-cgi.exe, прежде чем завершается работа основного PHP процесса. Режим рециркуляции процессов FastCGI контролируется параметром конфигурации, который называется instanceMaxRequests (максимальное кол-во запросов на экземпляр приложения — прим.перевод). Данное значение определяет, какое кол-во запросов выполнит FastCGI, прежде чем произойдёт рециркуляция. В PHP так же существует функция рециркуляции, которая контролируется параметром PHP_FCGI_MAX_REQUESTS. Установка наименьшего значения для instanceMaxRequests или подобного параметра PHP_FCGI_MAX_REQUESTS, гарантирует, что основной PHP процесс не будет закончен преждевременно.

    Свойства для FastCGI могут быть изменены при помощи IIS Manager или командной строки, используя приложение appcmd.

    Для настройки процесса рециркуляции FastCGI, используя IIS Manager, вам необходимо установить Административный пакет для IIS 7.0 и выбрать на уровне севера меню FastCGI settings (параметры FastCGI):

    Далее необходимо выбрать приложение FastCGI, которое вы хотите настроить и нажать «Edit. » в панели Actions:

    В окне «Edit FastCGI application» установите для параметра instanceMaxRequest значение 10000 нажмав кнопку обзора в меню EnvironmentVariables:

    Добавьте переменную PHP_FCGI_MAX_REQUESTS,установив для неё значение в 10000:

    Примечение: Если вы не установите данные значения, то по умолчанию они будут следующими: instanceMaxRequests = 200, PHP_FCGI_MAX_REQUESTS = 500 (для большинства сборок PHP).

    Использование командной строки:

    Для конфигурирования процессов рециркуляции FastCGI и PHP посредством appcmd, используйте следующие команды:

    C:\>%windir%\system32\inetsrv\appcmd set config -section:system.webServer/fastCgi /[fullPath=’c:\\php-cgi.exe’].instanceMaxRequests:10000
    C:\>%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi /+»[fullPath=’C:\\php-cgi.exe’].environmentVariables.[name=’PHP_FCGI_MAX_REQUESTS’,value=’10000′]»

    Большинство PHP приложений могут зависеть от функций или расширений доступных только в определённой версии PHP. Если такие приложения должны быть размещены на одном сервере хостинга, то необходимо чтобы на данном сервере одновременно поддерживались и работали разные версии PHP. Обработчик FastCGI в IIS 7.0 полноценно поддерживает одновременную работу различных версий PHP на одном сервере.

    К примеру, допустим что на своём Web сервере вы планируете поддерживать следующие сборки: PHP 4.4.8, PHP 5.2.1 и PHP 5.2.5 non-thread safe. Для включения данной возможности вы должны положить соответствующие исполняемые файлы PHP в различные папки на файловой системе (к примеру C:\php448\, C:\php521\ и C:\php525nts) и создать соответствующие пулы приложений для каждой версии:

    C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath=’c:\php448\php.exe’]
    C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath=’c:\php521\php-cgi.exe’]
    C:\>%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath=’c:\php525nts\php-cgi.exe’]

    Так, если у вас есть 3 Web сайта (site1, site2, site3), каждый из которых должен использовать различные версии PHP, вы можете задать соответствие заголовков для каждого из сайтов, создав соответствующий пул приложений FastCGI.

    Примечание: Каждый пул приложений процессов FastCGI будет идентифицируется уникально — комбинацией полного пути и свойствами аргументов.

    C:\>%windir%\system32\inetsrv\appcmd set config site1 –section:system.webServer/handlers /+”..[name=’PHP448_via_FastCGI’,path=’*.php’,verb=’*’,modules=’FastCgiModule’,scriptProcessor=’c:\php448\php.exe’,resourceType=’Either’]
    C:\>%windir%\system32\inetsrv\appcmd set config site2 –section:system.webServer/handlers /+”..[name=’PHP521_via_FastCGI’,path=’*.php’,verb=’*’,modules=’FastCgiModule’,scriptProcessor=’c:\php521\php-cgi.exe’,resourceType=’Either’]
    C:\>%windir%\system32\inetsrv\appcmd set config site3 –section:system.webServer/handlers /+”..[name=’PHP525nts_via_FastCGI’,path=’*.php’,verb=’*’,modules=’FastCgiModule’,scriptProcessor=’c:\php525nts\php-cgi.exe’,resourceType=’Either’]

    Рекомендации по безопасности PHP

    Следующие настройки могут быть использованы для улучшения безопасности установленного PHP. Следуя рекомендациям найдите и измените в файле php.ini следующие значения:

    Отключение удалённых URLs для функций управления файлами, которые могут быть использованы во вредоносном коде.

    Определение директории, в которой процессы PHP могут читать и записывать на файловой системе.

    safe_mode=Off
    safe_mode_g >

    Ограничение безопасного режима.

    Лимит времени выполнения

    Лимит на использование размеров памяти и файлов.

    Настройка сообщений об ошибках и ведения логов.

    Модуль FastCGI для IIS может обрабатывать запросы с ошибками, если PHP отправляет данные в stderr (стандартный поток ошибок – прим.перевод) используя протокол FastCGI. Отключение ведения логов FastCGI предотвращает отправку приложением PHP сообщений об ошибках, используя stderr, генерируя при этом ошибку с кодом 500 для клиентов.

    Скрытие присутствия PHP

    Конфигурирование PHP на уровне сайтов

    Данная секция описывает процедуры, которые необходимы для настройки PHP на уровне сайтов. Хочется обратить внимание на то, что данная рекомендация обнародована и проверена Radney Jasmin совместно с хостинг провайдером GoDaddy.com, который официально поддерживает PHP хостинг на Windows Server 2008 посредством FastCGI.

    Пулы процессов PHP на уровне сайтов

    Когда каждый Web сайт имеет собственный пул приложений (это является рекомендованной практикой для IIS 7.0), появляется возможность ассоциировать выделенный пул процессов FastCGI с каждым Web сайтом. Пул приложений процессов FastCGI идентифицируется уникально — комбинацией полного пути и атрибутами аргументов. Итак, если необходимо создать несколько процессорных пулов FastCGI для некоторого исполняемого процесса, такого как php-cgi.exe,то атрибуты аргументов могут использоваться для разграничения процессорных пулов. В дополнении процессы php-cgi.exe с применением ключа командной строки «-d», могут использоваться для определения INI записи в процессе PHP. Данный ключ может быть использован для установки различных значений PHP, которые позволяют задавать уникальность аргументов для каждого пула.

    К примеру, если двум Web сайтам «website1» и «website2» необходимо использовать собственные настройки PHP, то нужно изменить пул процессов FastCGI следующим образом:

    В данном примере настройки PHP, в частности директива open_basedir, используются для разграничения процессорных пулов. В дополнении это заставляет PHP процесс выполняться для каждого пула процессов только в той директории, в которой расположен корневой Web сайт.

    Тогда website1 может иметь сопоставление PHP заголовков, как показано ниже:

    и website2 может иметь следующее сопоставление PHP заголовков:

    Определение месторасположения файла php.ini

    Во время запуска процесс PHP определяет месторасположение файла конфигурации php.ini используя различные настройки. В официальной документации PHP детально описан процесс инициализации (начального запуска) процесса PHP. Так, одним из мест поиска процессом PHP своего файла конфигурации (php.ini) может быть директива PHPRC (PHPRC – это переменная среда ОС, как TMP или Temp – прим.перевод). Если процесс PHP находит файл конфигурации, определённый в вышеописанной директиве, то он начинает использовать данный файл конфигурации, игнорируя путь заданный по умолчанию в файле php.ini. Данная директива полезна для пользователей хостинга, они могут применять свои собственные настройки php.ini на уровне своих сайтов.

    К примеру, существует два Web сайта: website1 и website2; расположенных по следующим путям C:\WebSites\website1 и C:\WebSites\website2, тогда пул процессов php-cgi.exe в секции файла applicationHost.config должен иметь следующий вид:

    В данном случае WebSite1 имеет свои настройки php.ini файла, который расположен в директории C:\WebSites\website1, тогда как WebSite2 имеет свои настройки файла php.ini, который расположен в директории C:\WebSites\website2. Данная конфигурация так же предполагает что значение PHPRC не задано, иначе сделать уникальные установки файла php.ini на уровне сайтов не представляется возможным.

    Большинство популярных PHP приложений используют функциональность URL rewriting на Web серверах, которая предоставляет отображение дружественных ссылок и более корректное предоставление информации для поисковых машин (ссылки вида http://site.name/page123,а не http://site.name/mod_content/page.php=id123&disp — прим.перевод). В IIS 7.0 поддержка URL rewriting (перезапись ссылок) поддерживается посредством модуля URL rewrite.

    В следующих статьях представлено подробное описание данного модуля:

    • Работа с модулем Microsoft URL Rewrite. Описывается метод настройки модуля URL Rewrite.
    • Детальное описание конфигурации модуля Microsoft URL Rewrite. Описывается функционал данного модуля и возможность всех опций.
    • Настройка популярных PHP приложений совместно с модулем URL Rewrite:
      • WordPress
      • MediaWiki
      • b2Evolution
      • Mambo
      • Drupal

    Команда перестроить applicationHost.config в IIS 7

    Есть ли способ перестроить файл applicationHost.config в IIS 7 с помощью команды Windows? Или если вы можете помочь мне исправить проблему, изменив этот файл, это тоже хорошо. При сравнении этого файла с другими серверами я замечаю очень важные разделы, которые отсутствуют или различаются после удаления сайта и нескольких пулов приложений.

    Я никоим образом не специалист в IIS 7, но я использую его уже 7 лет. Я уверен, что выполнил все правильные шаги для новой конфигурации сайта и все еще дает мне эту ошибку, «401.1 «You are not authorized to view this page. You do not have permission to view this directory or page using the credentials that you supplied.»

    Это произошло на машине, где IIS APPPOOL не существует, поэтому мы никогда не использовали этого пользователя, как обычно, при настройке разрешений. Однако на прошлой неделе мы добавили соответствующие разрешения для IIS_IUSRS (с IUSR в этой группе), и сайт работал нормально. Мы используем проверку подлинности Windows, и все остальные методы проверки подлинности отключены. Нет виртуальных каталогов. Мы используем .NET 4.0, Classic и 32-разрядное приложение (в расширенных настройках).

    Нам пришлось вручную обновить имя хоста, выполнив следующую команду в «C:\Windows\System32\inetsrv» в привязке, поскольку IIS будет серым из имени хоста, когда сертификат SSL VeriSign будет добавлен к привязке.

    Отсутствующие разделы на «плохом» веб-сервере:

    1 — существует в «хорошем» поле, отсутствует в «плохом» поле

    2 — существует в «хорошем» поле, отсутствует в «плохом» поле

    3 — этот раздел существует в «хорошем» поле, но только 2 (первые 2 строки) существуют в «плохом» поле.

    4 — этот раздел существует в «плохом» поле, но отсутствует в «хорошем» поле

    5 — свойство ssiExecDisable отсутствует в поле «good»

    Ошибка IIS: для этой операции необходим интегрированный режим конвейера служб iis

    Разрабатываю приложение на MVC, через VS при запуске через IIS Express все работает. Переношу приложение на локальный IIS — ошибка. В интернете не удалось на ней найти информации, подскажите — где искать — в чем дело.

    Вот скрин ошибки:

    30.11.2020, 09:54

    Как передать переменную сессии из IIS одной платформы в IIS на другой платформе
    Дано: пользователь проходит аутентификацию на первом сервере (Win2kServ, IIS+ASP), создается.

    IIS 7 EXPRESS и IIS 8: как протестировать свой сайт
    Здравствуйте. Проблема такова, запустил IIS 8 на компьютере и теперь немогу протестировать веб сайт.

    В чем различие IIS v5 и IIS v6 от IIS v4?
    В чем различие IIS v5 и IIS v6 от IIS v4? и где можно их скачать?

    Серверная база 1С Розница 2.1 на IIS, win7: периодически зависает роль IIS.
    Всем привет. 1С предприятие 8.3 Редакция Розница 2.1 Имеется серверная часть работает на Windows.

    Понравилась статья? Поделиться с друзьями:
    Кодинг, CSS и SQL