Начало работы с Windows IIS (Службы информационных интернета)

Веб-сайты – самый распространенный тип контента в интернете сегодня. Однако, чтобы обеспечить видимость вашего веб-сайта для максимально широкой аудитории, вам потребуется разместить его на веб-сервере. Как это сделать? Рассмотрите вариант использования служб информации о вебе Windows (Windows IIS) – популярного выбора для хостинга веб-сайтов.

В этом руководстве вы узнаете основы начала работы с Windows IIS для управления веб-приложениями через графический интерфейс или командную строку!

Читайте далее и повышайте уровень управления вашими веб-приложениями с помощью Windows IIS!

Предварительные требования

Этот учебник представляет собой практическую демонстрацию. Если вы хотите следовать за нами, убедитесь, что у вас есть:

  • A Windows machine – This tutorial uses Windows Server 2012 since it’s stable and available at a low cost (or free). But you can also use Windows 10 for this tutorial.
  • Распределение Visual C++, установленное на вашем компьютере под управлением Windows. Для корректного отображения страниц PHP IIS требуется Visual C++.

Установка Windows IIS на сервер с Windows

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

Для установки Windows IIS на сервере с Windows:

1. Нажмите Ctrl+R, чтобы открыть окно Run, введите ServerManager и нажмите Enter.

Это действие открывает панель инструментов Server Manager, которую администраторы ИТ используют для различных повседневных задач, связанных с администрированием сервера.

Launching the Server Manager

2. На серверном менеджере нажмите ссылку Добавить роли и функции, чтобы открыть мастер, где вы можете добавить службы ролей и функции на ваш локальный сервер.

Initiating adding roles and features

3. Затем прочтите информацию на странице Перед началом работы и нажмите Далее.

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

Acknowledging the welcome page

4. Теперь, на странице Тип установки выберите первый вариант (Установка на основе ролей или функций) и нажмите Далее.

Этот вариант рекомендуется в большинстве случаев, он позволяет добавлять конкретные роли, службы ролей и функции стандартным способом.

Если выберете второй вариант (Установка служб удаленного рабочего стола), вам придется вручную выбрать требуемые роли, службы и функции для установки.

Selecting installation type

5. Выберите свой сервер из пула серверов и нажмите Далее.

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

Selecting a destination server

6. Затем установите флажок Веб-сервер (IIS) на странице Роли сервера для масштабируемой инфраструктуры веб-приложений и нажмите Далее.

Selecting the Web Server (IIS) role to install on the destination server

7. Оставьте выбранные значения по умолчанию и нажмите Далее. Это действие сообщает Windows установить все необходимые подфункции для роли сервера IIS, включая ASP.NET, статический контент и страницу по умолчанию.

Confirming default selected features

8. Ознакомьтесь с дополнительной информацией о Роли веб-сервера (IIS) и нажмите Далее.

Reviewing more information about the Web Server Role (IIS)

9. На странице Службы ролей оставьте выбранные значения по умолчанию, но разверните узел Разработка приложений, выберите флажок CGI и нажмите Далее.

Этот параметр устанавливает поддержку Common Gateway Interface (CGI), стандартного способа взаимодействия внешних приложений с веб-серверами.

Selecting role services

10. После настройки параметров установки нажмите кнопку “Установить”, чтобы установить выбранные роли и функции.

Installing the selected roles and features

11. После завершения установки, как показано ниже, нажмите “Закрыть”, чтобы завершить и выйти из мастера.

И вот оно! Вы успешно установили службу IIS Windows на своем сервере.

Finishing the roles and features installation

12. Наконец, откройте свой любимый веб-браузер и перейдите по адресу http://localhost/.

Если все пройдет успешно, вы увидите страницу IIS по умолчанию, подобную приведенной ниже, что подтвердит, что ваш веб-сервер работает.

Viewing the default IIS web page

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

Вы успешно установили службу IIS Windows на своем сервере, но вам все равно нужен способ размещения страниц на вашем сервере. И для этого урока вы установите PHP и настроите IIS для обработки запросов PHP.

Для установки PHP на ваш сервер:

1. Перейдите на страницу загрузки релиза PHP download page. На момент написания этого руководства последним стабильным выпуском является PHP 8.1.

Загрузите ZIP-архив Non Thread Safe (NTS), поскольку IIS использует однопоточное выполнение для обработки каждого запроса. Пакет Thread Safe (TS) предназначен для IIS FastCGI, который позволяет PHP работать в многопоточной среде.

Downloading the PHP (NST) package

2. Распакуйте загруженный архив PHP в каталог PHP (C:\PHP\) на вашем сервере.

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

Unzipping the downloaded PHP archive to the PHP directory

3. Откройте свой Server Manager, выберите Dashboard → Tools → Internet Information Services (IIS) Manager. Это действие откроет консоль IIS Manager, где вы сможете настроить параметры IIS, создавать и управлять веб-сайтами, а также разворачивать веб-приложения.

Opening the IIS Manager console.

4. Теперь выберите свой localhost (панель Connections) и дважды щелкните по Handler Mappings, чтобы получить доступ к списку доступных отображений обработчиков.

Accessing handler mappings

5. На странице Handler Mappings нажмите Add Module Mapping (правая панель), что откроет диалоговое окно Add Module Mapping.

Initiating adding a module mapping

6. Затем настройте новое отображение следующим образом:

  • Request path – Введите *.php, чтобы указать IIS перенаправлять все запросы, заканчивающиеся на .php, к модулю обработки PHP. Символ звездочки (*) позволяет сэкономить время, так как не нужно добавлять отображение обработчика для каждого файла PHP.
  • Module – Выберите FastCgiModule, чтобы указать, что обработкой запросов должен заниматься модуль FastCGI.
  • Executable – Введите полный путь к файлу php-cgi.exe. В данном примере путь – C:\PHP\php-cgi.exe.
  • Name – Укажите уникальное имя отображения модуля, но в этом учебнике используется PHP_FastCGI.
  • Щелкните Request Restrictions, чтобы настроить ограничения запросов.
Adding module mapping

7. Установите флажок и выберите опцию File or Folder. Эта опция гарантирует, что отображение обработчика применяется только к файлам на сервере.

Selecting the invoke handler

8. Перейдите на вкладку Глаголы и выберите опцию Все глаголы. Эта опция указывает IIS перенаправлять все типы HTTP-запросов, такие как GET, POST и HEAD, в модуль обработки PHP.

Selecting all verbs to be handled

9. Теперь на вкладке Доступ выберите опцию Сценарий и нажмите OK. Эта опция сообщает IIS, что страницы PHP – это сценарии, которые должны выполняться, а не статические файлы, которые должны обслуживаться напрямую.

Selecting the required access by the handler

10. Вернитесь к добавлению сопоставления модулей, нажмите OK, чтобы добавить новое сопоставление модулей.

Adding the new module mapping

11. Наконец, откройте PowerShell от имени администратора и выполните команду IISRESET для перезапуска службы IIS Windows. Это действие необходимо для вступления в силу нового сопоставления обработчиков.

IISRESET 
Restarting the Windows IIS server

Развертывание вашего первого веб-сайта

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

1. Создайте новый файл index.php в вашем любимом текстовом редакторе в корневом каталоге веб-сайта. В этом примере корневой каталог веб-сайта – C:\inetpub\wwwroot\.

Расширение .php сообщает IIS, что файл index.php является страницей PHP, которую нужно обработать с помощью модуля обработки PHP.

2. Затем добавьте следующий код в ваш новый файл index.php, сохраните изменения и закройте файл.

Нижеприведенный код сообщает IIS отображать простое сообщение “Привет, мир!” на странице PHP в вашем браузере.

<?php
header('Content-Type: text/html; charset=UTF-8');
echo '<html><head><title>Hello World</title></head><body>Hello world!</body></html>';

3. Наконец, откройте новую вкладку в вашем веб-браузере и перейдите по адресу http://localhost/index.php чтобы запросить вашу страницу index.php с локального сервера IIS. Это позволит вам проверить работу развертывания вашего веб-сайта.

Если все пройдет успешно, вы увидите сообщение “Привет, мир!” на странице index.php, как показано ниже.

Testing the PHP (index.php) page

Управление Windows IIS через командную строку

Вы являетесь поклонником использования CLI? Нет проблем! Помимо GUI, IIS также можно управлять с помощью командной строки. С помощью этого инструмента вы можете управлять практически всеми аспектами IIS, включая сайты, приложения, виртуальные каталоги, пулы приложений и т. Д.

В этом руководстве вы кратко рассмотрите некоторые основные команды для управления IIS. Но для полного списка всех доступных команд AppCmd.exe обратитесь к официальной документации Microsoft.

1. Откройте командную строку от имени администратора и выполните нижеуказанные команды, чтобы перечислить все веб-сайты (site), доступные на вашем сервере IIS.

%systemroot%\system32\inetsrv\APPCMD list sites

Вы увидите список всех сайтов, в настоящее время работающих на вашем сервере, а также некоторую основную информацию о каждом сайте, такую как идентификатор, состояние, и т. д.

Слишком общо? Нет проблем! Вы также можете использовать AppCmd.exe для запроса о конкретном веб-сайте на следующем шаге, чтобы углубиться в информацию, которая вас интересует.

Listing all the websites on your IIS server.

2. Выполните нижеуказанную команду, чтобы получить всю информацию о Веб-сайте по умолчанию.

%systemroot%\system32\inetsrv\APPCMD list site "Default Web Site"
Listing all information about a specific website

3. Затем выполните следующие команды, чтобы остановить определенный веб-сайт и перечислить все остановленные веб-сайты (/state:Stopped).

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


%systemroot%\system32\inetsrv\APPCMD stop sites "Default Web Site"
%systemroot%\system32\inetsrv\APPCMD list sites /state:Stopped
Finding all websites that are currently stopped

4. Теперь выполните нижеуказанную команду, объединяя несколько критериев, разделенных пробелом, чтобы дополнительно отфильтровать результаты.

Нижеприведенная команда перечисляет все сайты, находящиеся в состоянии остановки (/state:Stopped) и имеющие включенный автозапуск на уровне сервера (/serverAutoStart:true).

%systemroot%\system32\inetsrv\APPCMD list sites /serverAutoStart:true /state:Stopped

5. Наконец, выполните команду ниже, чтобы запустить веб-сайт, который вы остановили на третьем шаге (“Веб-сайт по умолчанию”).

Starting a stopped website

Заключение

Вы увидели, как Windows IIS позволяет управлять вашими веб-сайтами. И в этом руководстве вы узнали, как установить и настроить IIS на сервере Windows для развертывания и тестирования базового веб-сайта PHP. Windows IIS – это универсальный инструмент, который позволяет управлять вашими веб-сайтами через графический интерфейс и среду командной строки.

С этим новым знанием вы готовы начать создавать свои веб-сайты и приложения на IIS! Почему бы вам не научиться, как создать сайт на WordPress на IIS в следующий раз?

Source:
https://adamtheautomator.com/windows-iis/