DataLife Engine / Установка и настройка веб-сервера IIS + PHP + MySQL

Установка и настройка веб-сервера IIS + PHP + MySQL

Мы будем рассматривать тот случай, когда у вас уже есть два сервера с установленной на них операционной системой Windows Server 2019. Кроме того, на одном из серверов должна быть установлена роль Active Directory Domain Services.

Подробно о том, как установить Windows Server 2019, вы можете прочитать в моем руководстве “Установка Windows Server 2019”.

Кроме того, на одном из серверов должна быть установлена роль Active Directory Domain Services, а второй сервер должен быть включен в домен.

Узнать о том, как установить Active Directory Domain Services на Windows Server 2019, вы можете, прочитав “Установка Active Directory Domain Services на Windows Server 2019”.

Рекомендую всегда использовать англоязычные издания Exchange Server. Как показывает практика, оригинальные (английские) версии Exchange работают стабильнее, к тому же вам будет проще общаться на одном языке с профессионалами в случае возникновения проблем или при желании обменяться опытом.


Настройка системы
1. Проверяем правильность настройки времени и часового пояса;
2. Задаем понятное имя для сервера и, при необходимости, вводим его в домен;
3. Если сервер не подключен напрямую к сети Интернет, стоит отключить брандмауэр;
4. Для удаленного администрирования, включаем удаленный рабочий стол;
5. Устанавливаем все обновления системы (обязательно).

И так ...

Чаще всего, PHP и MySQL устанавливается на серверы с Linux. Однако, при необходимости, можно настроить запуск и обработку PHP скриптов на Windows. Версии последней могут быть разные, например, Server 2008/2012/2016/2019 или не серверные системы, такие как, 7/8/10. Данная инструкция подойдет как для чайника, так и опытного специалиста (в качестве шпаргалки).

Устанавливаем IIS
Публикация сайта для PHP
Работаем с PHP
- Устанавливаем
- Настраиваем IIS + PHP
- PHP Manager для управления
Установка MySQL

Установка IIS
Для установки веб-сервера, открываем “Server” - “Manage - Add Roles and Features

Установка и настройка веб-сервера IIS + PHP + MySQL


Если откроется окно с приветствием, нажимаем “Next”.
При выборе типа установки выбираем “Role-based or feature-based installation



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



Среди ролей выбираем “Web Server (IIS)” - во всплывающем окне кликаем по “Add Features”.



Нажимаем 3 раза “Next”. Cреди Select role services в подразделе Application Development ставим галочку для установки CGI — этот компонент нам нужен для работы PHP.



Ниже выбераем службу ролей — “FTP Server - FTP Service”.



В следующем окне ставим галочку Restart the destination server automatically if required, если требуется и кликаем по “Install”.



Дожидаемся окончания процесса установки.

Сразу после установки IIS запускается автоматически. Но, если что, его можно запустить с помощью команды iisreset:

iisreset /start


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

Также мы можем открыть диспетчер служб (команда services.msc) и перезапустить Службу веб-публикаций.



Открываем браузер и вводим адрес http://localhost — должен открыться стартовый портал.



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

Открываем “Server Manage” - кликаем по “Tool” - “Internet Information Services (IIS) Manager”.



Находим раздел Site - кликаем правой кнопкой мыши по “Add Website...



Заполняем данные для нового сайта.



* где:

Имя сайта — произвольно имя будущего сайта.
Физический путь — путь до папки на сервере, где будут расположены файлы сайта.
Тип — тип соединения (http или https). Для первого запуска обойдемся http. При необходимости, его можно всегда поменять или использовать оба типа одновременно.
IP-адрес — если на сервере много IP-адресов, то мы можем выбрать конкретный, на котором будет работать сайт.
Порт — сетевой порт, на котором будет работать сайт. Как правило, это 80 для http или 443 для https.
Имя узла — доменное имя сайта, при обращении по которому должен открываться создаваемый сайт.
После заходим в каталог с сайтом (в нашем примере, это C:\inetpub\wwwroot\php) и создадим в нем файл index.html со следующим содержимым:

<h1>Hello from PHP site</h1>


* Не забудьте добавить A-запись с именем вашего сайта на DNS-сервер или пропишите необходимые строки в файлы hosts тех рабочих станций, откуда будете обращаться к сайту.

Открываем браузер и переходим на созданный сайт, например, как в нашей инструкции — http://logonorm.uz. Мы должны увидеть страницу с написанным нами текстом.



Тестовый сайт создан.

PHP
Установка PHP

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



Откроется страница с несколькими версиями пакета — там как мы ставим PHP как FastCGI, нам нужна версия “Non Thread Safe” (не потокобезопасная), так как она будет работать быстрее. И так, скачиваем zip-архив на сервер.



Для установка PHP на Windows достаточно просто распаковать содержимое архива в любой каталог, например, C:\Program Files\PHP.



Делаем копию файла php.ini-production и переименовываем его в php.ini.



Открываем на редактирование данный файл и правим следующее:

open_basedir = C:\inetpub\wwwroot
...
cgi.force_redirect = 0
...
short_open_tag = On


* где open_basedir — директория, в которой будут разрешены PHP-скрипты; cgi.force_redirect — указывает будет ли скрипты обрабатываться при прямом запросе или только при запросе от веб-сервера. В IIS запросы контролируются самим веб-сервером, поэтому опция может оказать обратный эффект; short_open_tag — позволяет использовать короткий вид открывающих тегов для PHP.

Проверяем, что PHP работает. Открываем командную строку Windows - переходим в каталог с установленным PHP:

cd "C:\Program Files\PHP"


Запускаем php с параметром -m:

php -m


Мы должны получить список подключенных модулей:

[PHP Modules]
bcmath
calendar
Core
ctype
...


Но если мы получим ошибку, связанную с отсутствием файла VCRUNTIME140.dll:



... необходимо установить Microsoft Visual C++ Redistributable. Переходим на страницу загрузки и скачиваем компонент.



После загрузки, устанавливаем его на сервер, после чего, снова пробуем вывести на экран модули php:

php -m


Настройка сайта на IIS для работы с PHP
И так, веб-сервер поднят, PHP установлено, сайт работает. Настроим связку IIS + PHP. Открываем “Internet Information Services (IIS) Manager” - переходим к созданному сайту и кликаем по “Handler Mappings”.



В меню справа кликаем по “Add Module Mapping”.



Заполняем поля.



* где:

Путь запроса — путь к файлам, при вызове которых действует сопоставление. В данном примере для всех файлов, заканчивающихся на php.
Модуль — действующий модуль для обработки запроса.
Исполняемый файл — файл, который будет выполнять обработку запроса. В данном примере мы выбрали файл из скачанного и распакованного нами архива PHP.
Имя — произвольное имя для сопоставления.


Нажимаем “OK” и подтверждаем действие. Сопоставление создано.

Теперь заходим в Документ по умолчанию.



... и добавляем новый документ. Справа нажать “Add” и в появившемся окне ввести index.php



* в данном примете мы указываем, что по умолчанию сервер будет искать файл index.php, если таковой не указан явно в запросе.

Открываем в проводнике папку, в которой находятся файлы сайта (в нашем примере, C:\inetpub\wwwroot\php). Создаем файл index.php с содержимым:

<?php

phpinfo();

?>


Открываем браузер и снова переходим на наш сайт — мы должны увидеть страницу с информацией о php.



PHP Manager в IIS
Для того, чтобы упростить настройку PHP мы можем установить диспетчер PHP для IIS. Для этого переходим по ссылке и переходим по ссылке для скачивания стабильной версии php-менеджера.



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



Открываем “Internet Information Services (IIS) Manager” — мы должны увидеть PHP Manager.



Установка MySQL
MySQL для Windows можно скачать бесплатно. Переходим на страницу по ссылке - выбираем операционную систему Microsoft Windows - кликаем по Go to Download Page.



На следующей странице выбираем для скачивания mysql-installer-community



В открывшемся окне кликаем по No thanks, just start my download



Начнется загрузка файла для установки MySQL. Дожидаемся скачивания и запускаем установочный файл - в открывшемся окне выбираем “Server only”. Нажимаем “Next”.



В следующем окне кликаем по “Execute”.



... и дожидаемся установки СУБД.



Откроется окно конфигурации MySQL — нажимаем “Next



Выбираем установку одиночного сервера MySQL - Standalone MySQL Server. Нажимаем “Next”.
Оставляем все значения по умолчанию для настроек сети и нажимаем “Next”.



Требуем сложные пароли. Нажимаем “Next”.



Вводим дважды пароль для пользователя root. Нажимаем “Next”.



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

Устанавливаем СУБД как сервис и стартуем его.



Настройки прав доступа — нажимаем “Next”.



Настройки готовы для применения — нажимаем “Execute”.



Дожидаемся применения настроек и кликаем по “Finish”.



Настройка завершена. Нажимаем “Next”.



Установка завершена — нажимаем “Finish”.



Сервер баз данных готов к использованию.

По умолчанию, PHP поддерживаем mysql — в этом можно убедиться на странице phpinfo, найдя раздел mysqlnd
Наберем http://logonorm.uz и прокрутим вниз.

22-10-2022, 08:30
Вернуться назад