В данной статье мы установим и проведем базовые настройки веб-сервера IIS на сервере с операционной системой Windows Server 2012-2019.
1. Установим роль веб-сервера IIS.
Пуск (Start) — Диспетчер серверов (Server Manager)
Далее Управление (Manage) — Добавить Роли и Компоненты (Add Roles and Features)
Жмем Далее (Next)
Оставляем выбранную опцию Установка ролей или компонентов (Role-based or feature-based installation) и Далее (Next)
Выбираем локальный сервер, жмем Далее (Next)
Выбираем Веб сервер Web Server (IIS), жмем Добавить Компоненты (Add Features) и Далее (Next)
В следующем окне Далее (Next)
Далее (Next)
Выбираем для установки CGI (в разделе Application Development). Также рекомендую дополнительно установить FTP сервер, что позволит закачивать файлы на сервер с помощью FTP клиента (например FileZilla)
Далее (Next), ставим галочку для автоматического перезапуска сервера после установки роли и кнопку Install
После перезапуска сервера, IIS запустится автоматически. Но если необходимо перезапустить, достаточно выполнить команду (Пуск — Выполнить)
iisreset
или запустить
iisreset /start
Для проверки работы веб-сервера, откройте в браузере страницу http://localhost/
Корневая папка сайта по умолчанию размещена по пути
C:\inetpub\wwwroot
Но часто бывает, что на сервере необходимо разместить несколько сайтов. По этой причине, создадим тестовый сайт со своей корневой папкой.
2. Создание сайта в IIS
Вначале создадим корневую папку сайта на диске сервера. Для примера, будем использовать имя сайта domain.name
Далее в Диспетчере серверов (Server Manager) — в меню Средства (Tools) — откроем Диспетчер служб IIS (Inetnet Information Services (IIS) Manager)
В окне Диспетчера служб IIS необходимо открыть меню сервера — Сайты (Sites) — правой кнопкой мышки — Добавить веб-сайт… (Add Website…)
Заполним указанные на скриншоте обязательные поля
Имя сайта (Site name) — произвольное название сайта.
Физический путь (Physical path) — путь к корневой папке сайта.
Тип (Type) — тип протоколв (http или https). Для начальнйо настройки сайта будет достаточно http протокола.
Имя узла (Host name) — доменное имя сайта.
Жмем кнопк�� Ок и видим, что в списке сайтов, кроме сайта по умолчанию, добавился наш, только что созданный сайт.
Чтобы проверить работу сайта, создадим в его корневой директории файл с именем index.html и скопируйте в этот файл такое содержимое
<html>
<body>
Тело страницы: Test HTML page
</body>
</html>
Примечание: файл index.html можно открыть программой Блокнот или другим текстовым редактором.
Откройте в браузере страницу своего сайта (в нашем примере это domain.name) и увидите такую страницу.
3. Интеграция IIS и PHP
Перед выполнением этого пункта, необходимо установить на сервере PHP. Для этого воспользуйтесь статьей: Как установить и настроить PHP на Windows Server
Чтобы веб-сервер мог успешно обрабатывать php запросы, необходимо выполнить интеграцию IIS и PHP. Для этого в Модуле IIS перейдите в меню нашего сайта и откройте Отображение обработчика (Handler Mappings)
в списке Действий (Action) которого есть пункт меню «Добавить модульный обработчик» (Add Module Mapping). Заполните форму как на скриншоте и нажмите кнопку «Запрос ограничения» (Request Restrictions…)
Выберите вариант «Файл или папка» (File or folder)
Нажмите ОК, потом снова ОК на форме модульного обработчика и подтвердите создание действия
В списке обработчиков должен появиться только что созданный:
Теперь добавим настройку на уровне веб-сервера, чтобы файл index.php открывался в качестве страницы по умолчанию.
Для этого в меню сервера (а не сайта) открываем «Документ по умолчанию» (Default document),
выбираем в списке действий «Добавить» (Add), заполняем поле Имя (Name) значением index.php и жмем ОК
Полученный результат
Для применения всех настроек необходимо перезапустить веб сервер. Для этого остановим его
и запустим
Интеграция веб-сервера с PHP настроена.
Давайте проверим работу PHP скрипта. Для этого в корневой папке сайта создадим файл с именем index.php, откроем его в блокноте и добавим такое содержимое
<?php
phpinfo();
?>
Сохраним файл и обновим в браузере сайт «http://domain.name/»
Должна отобразиться такая страница
Это значит, что PHP скрипты успешно обрабатываются веб-сервером.
В данной статье мы научились устанавливать на Windows Server 2012-2019 веб-сервер IIS, выполнять первоначальные настройки, интегрировать с установленным ранее PHP и создавать отдельный сайт в IIS Manager.
Лично я предпочитаю пользоваться веб-сервером на .nix системах, но иногда бывает необходимо развернуть web-сервер на Windows. Рассмотрим такой вопрос как установка веб-сервера на Windows Server. На примере Windows Server 2012. Хотя в остальных версиях процесс установки особо не отличается.
Первым делом нужно установить IIS. Делается это довольно просто. Диспетчер серверов -> Управление -> Добавить роли и компоненты -> Установка веб-сервера (IIS). Подробнее в видео.
Тег video не поддерживается вашим браузером.
Скачайте видео.
Создайте тестовую страницу, откройте блокнот, напишите любой текст и сохраните в C:\Inetpub\wwwroot под названием Default.html (в моем случае это txt файл — Default.html.txt).
Настройка веб-сервера
Создайте тестовую страницу, откройте блокнот, напишите любой текст и сохраните в C:\Inetpub\wwwroot под названием Default.html (в моем случае это txt файл — Default.html.txt).
Что бы настроить web-сервер откройте Диспетчер служб IIS: Пуск -> Администрирование -> Диспетчер служб IIS. Слева будет отображаться web-узел по умолчанию.
Для добавления web-страницы по умолчанию нужно выбрать сервер, а затем выбрать Документ по умолчанию.
Далее нам нужно узнать (если не знаем) IP-адрес сервера. Для этого заходим в PowerShell и выполняем команду – ipconfig /all.
Запускаем браузер и набираем IP-адрес и названием страницы по умолчанию. В моем случае это 169.254.252.180/Default.html.txt.
Попробуйте открыть эту страницу с другого рабочего места в сети.
Создайте новый web-узел. Создайте папку для нового сайта на диске C. В моем случае это папка www. Создайте в папке тестовую страницу (как Default.html ранее). Удалите текущий узел, щелкните правой кнопкой мыши на узле «сайты» и выберите команду «Добавить веб-сайт».
Заполните поля:
- Имя сайта.
- Физический путь.
Нажмите ОК и проверьте работоспособность сайта на сервере.
Проверьте работоспособность сайта на другом компьютере в сети.
Установка FTP-сервера
Установите FTP-сервер. Он устанавливается так же, как и веб-сервер IIS (Диспетчер серверов -> Управление -> Добавить роли и компоненты -> FTP-сервер).
В диспетчере служб IIS нажмите «Добавить FTP-сайт». Откроется окно добавления нового FTP-сайта. Задайте имя сайта и физический путь.
Укажите параметры привязки SSL.
Настройте разрешения. Предоставьте пользователям разрешения на чтение информации и на запись.
Далее необходимо создать виртуальный каталог веб-сервера. Это необходимо для того, чтобы веб-сервер мог получить доступ к корневому каталогу службы FTP.
Задайте псевдоним и физический путь. Обычно они совпадают с именем и (test) и каталогом сайта (C -> www).
Настройки брандмауэра
Для того, что бы FTP соединение работало корректно нудно настроить брандмауэр.
Откройте брандмауэр в режиме повышенной безопасности.
В вертикальном меню слева выберите Правила для входящих подключений.
Выберите в вертикальном меню справа Создать правило. Выберите тип правила: Преопределенные: FTP-сервер. Далее установите все правила.
Далее выберите действие — разрешить подключение.
Подключитесь с помощью FTP с другого компьютера в локальной сети. Для этого наберите в браузере: ftp://IP-адрес сервера после чего введите логин и пароль от сервера.
FTP-соединение установлено!
Итак, в этой статье мы рассмотрели такую тему как установка веб-сервера на Windows Server. Если у вас появились вопросы обязательно задайте их в комментариях.
Анатолий Бузов / об авторе
Обучаю HTML, CSS, PHP. Создаю и продвигаю сайты, скрипты и программы. Занимаюсь информационной безопасностью. Рассмотрю различные виды сотрудничества.
Обычно, когда говорят о web-сервере, подразумевают решения на базе платформы Linux. Но если ваша инфраструктура развернута на основе Windows Server то логично будет использовать веб-сервер IIS. Вопреки распространенному мнению, это весьма популярная платформа, которая позволяет работать как с большинством популярных CMS, так и имеет широкий спектр систем, предназначенных для работы именно на Windows и IIS.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Несомненным достоинством IIS является его тесная интеграция с другими технологиями и средствами разработки Microsoft. В частности веб-решения для IIS могут использовать богатые возможности .NET и легко взаимодействовать с настольными приложениями на этой платформе. Если же вас это пока не интересует, то к вашим услугам богатый выбор готовых CMS, в том числе написанных специально для IIS. Сегодня мы рассмотрим как установить и настроить IIS для работы с веб-решениями на базе ASP.NET и установим одну из популярных CMS для этой платформы.
Для установки веб-сервера на платформе Windows перейдем в оснастку Роли в Диспетчере сервера и выберем установку ролей Веб-сервер (IIS) и Сервер приложений.
Но не спешите нажимать Далее, слева, под названием каждой роли, доступна опция Службы ролей, перейдем на нее и установим для Сервера приложений следующие опции: Поддержка веб-сервера (IIS), Общий доступ к TCP-портам и Активация через HTTP.
А для веб-сервера установите службу FTP-сервер.
После чего установите выбранные роли. Для проверки работоспособности IIS наберите в браузере IP-адрес вашего сервера, вы должны будете увидеть стандартную страницу-заглушку веб-сервера.
Теперь перейдем в к настройке сервера, для этого откроем Диспетчер служб IIS (находится в Пуск — Администрирование).
Первым делом создадим новый сайт, для этого щелкните правой кнопке на пункте Сайты в боковом меню Диспетчера IIS и выберите Создать новый сайт.
В открывшемся окне укажите имя сайта, путь к корневой папке (по умолчанию сайты пользователей располагаются в C:\inetpub\wwwroot), которую следует предварительно создать и укажите имя узла (доменное имя сайта), в нашем случае iissite.local
Не забудьте добавить A-запись с именем вашего сайта на DNS-сервер или пропишите необходимые строки в файлы hosts тех рабочих станций, откуда будете обращаться к сайту
В принципе вы уже можете размещать в папке сайта web-страницы и получать к ним доступ через браузер, но для полноценной работы с сайтом не помешает FTP-доступ к нему. Для этого щелкните правой кнопкой по названию вашего сайте в боковом меню и выберите Добавить FTP-публикацию
Далее укажите привязку FTP-cлужбы к сетевым интерфейсам и портам, а также настройте параметры безопасности. Если вы собираетесь использовать SSL, то учтите что вам потребуется сертификат, хотя если вы будете использовать FTP-доступ только для собственных нужд, то можно обойтись самоподписанным сертификатом. Не забудьте поставить галочку для автоматического запуска FTP-сайта.
На следующей странице укажите параметры доступа к серверу, мы советуем указывать конкретных пользователей, которые будут работать с данным сайтом.
Попробуйте подключиться через FTP используя любой клиент и загрузите проверочную html страницу с именем index.html, пример такой страницы мы приводили здесь. Если все сделано правильно, то, набрав в браузере имя нашего сайта, вы увидите такую страницу:
Веб-сервер настроен и вы можете использовать его для размещения HTML-страниц, однако современные сайты используют для хранения своих данных СУБД, поэтому следующим шагом установим MS SQL Express 2012, возможностей которого с лихвой хватит для наших задач. Установка производится со значениями по умолчанию, кроме Режима проверки подлинности, который следует переключить в Смешанный режим и задать пароль суперпользователю SQL-сервера sa.
Теперь попробуем установить какую либо популярную CMS созданную на базе технологии ASP.NET, обширный выбор таких решений представлен в галерее web-приложений Microsoft. Обратите внимание, что по кнопке скачать вы получите пакет для установки через Web PI, для установки на IIS вам потребуется перейти на сайт разработчика и скачать полный пакет с CMS
Мы будем устанавливать Orchard CMS, для получения пакета пройдите по ссылке и выберите Загрузить как zip, распакуйте полученный архив и закачайте в корень сайта содержимое папки Orchard.
Данная CMS создана на базе ASP.NET 4, поэтому настроим наш сайт на использование необходимых технологий. Для этого щелкните правой кнопкой на имени сайта в боковом меню и выберите Управление веб-сайтом — Дополнительные параметры
В открывшемся окне измените параметр Пул приложений, указав там ASP.NET v.4
Затем установите необходимые права на папку с сайтом, вам нужно добавить пользователю IIS_IUSRS возможность записи и изменения содержимого данной папки.
Также не забудьте создать базу данных для сайта, для этого зайдите в SQL Server Management Studio и, щелкнув правой кнопкой на пункте Базы данных в боковом меню, создайте новую базу.
Для установки CMS наберите в браузере адрес сайта и следуйте указаниям скрипта установки. Никаких сложностей там нет, единственное затруднение может вызвать правильное указание параметров подключения к SQL-серверу. Укажите что вы используете SQL Server (или SQL Express)
В строке подключения ниже укажите следующее:
server=SERVERNAME\SQLEXPRESS;database=iissite;user=sa;password=sapasswd;
где:
- server=SERVERNAME\SQLEXPRESS — имя сервера, на котором установлен SQL-сервер, и экземпляра SQL-сервера.
- database=iissite — имя базы данных (в нашем случае iissite)
- user=sa — пользователь СУБД (в нашем случае sa)
- password=sapasswd — пароль пользователя sa.
Так как наш сайт предназначен для внутреннего использования и использует изолированный экземпляр SQL, то мы использовали для доступа к серверу параметры пользователя sa, если же вы собираетесь размещать на веб-сервере несколько сайтов и администрировать их будут разные пользователи, то заведите на SQL сервере дополнительных пользователей и для подключения используйте их учетные данные, не забыв ограничить им доступ только к «своим» базам.
Спустя некоторое время, необходимое для установки CMS, в вашем браузере отобразиться страница сайта с тестовым содержимым. Можете переходить в админ-панель и настраивать сайт согласно ваших потребностей.
Несмотря на то, что мы рассмотрели установку только одного «движка», установка других CMS производится аналогичным образом и сложностей вызвать не должна
В следующей части нашей статьи мы расскажем как добавить нашему серверу поддержку PHP для запуска на нем популярных CMS написанных на этом языке.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Время на прочтение3 мин
Количество просмотров19K
Последнее время многие из наших клиентов сталкиваются с различного рода проблемами при развертывании своего сайта на виртуальном сервере с ОС Windows Server 2012 R2. В связи с этим мы приняли решение написать максимально подробное руководство, в котором пользователи смогут найти ответы на свои вопросы.
В данном руководстве мы развернём WordPress на связке IIS + PHP + MySQL, а также приведём некоторые рекомендации по настройке каждого из этих компонентов. Делать это мы будем на VPS от RUVDS с конфигурацией 2CPU, 2GB RAM, 20GB SSD. Итак, приступим…
Установка и настройка MySQL
Сначала устанавливаем распространяемые пакеты для Visual Studio 2013 (https://www.microsoft.com/ru-ru/download/details.aspx?id=40784)
Далее скачиваем установщик MySQL отсюда (mysql-installer-community-5.6.28.0.msi) и запускаем. Нам понадобится установить сервер и редактор.
Приступаем к настройке. Разработчики MySQL рекомендуют использовать тип конфигурации «Server Machine» при установке MySQL на сервере, на котором также будет запущен и веб-сервер. Данная опция в первую очередь влияет на объем потребляемой памяти. Снимаем флаг с «Open Firewall port for network access», так как веб-сервер будет также находится на данном сервере, а работать с бд мы будем с помощью локального визуального редактора бд MySQL Worbench, который мы также установили на данный сервер. На следующем окне создаём пользователя wp. Под этой учетной записью наш сайт будет работать с базой данных.
На всех следующих окнах просто жмем «Next». На данный момент предлагаемые там настройки по умолчанию нам подойдут.
В файле конфигурации C:\ProgramData\MySQL\MySQL Server 5.7\my.ini добавляем поле bind-address=localhost в разделе [mysqld] для того, чтобы mysql принимал TCP-подключения только на порт кольцевого интерфейса.
Перезапускаем службу MySQL57 в оснастке управления службами services.msc
Запускаем интерпретатор командной строки (cmd.exe) и выполняем:
C:\Users\Administrator>sc queryEx MySQL57 && netstat -nao | findstr 3306
SERVICE_NAME: MySQL57
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 1196
FLAGS :
TCP 127.0.0.1:3306 0.0.0.0:0 LISTENING 1196
Итак, сервер запущен и слушает нужный нам порт.
Создадим бд db1, используя установленный нами MySQL Workbench:
Готово!
Установка IIS+ PHP + FastCGI
Устанавливаем IIS
Сейчас нам требуется установить IIS с модулем FastCGI. Открываем панель управления сервером и кликаем «Add new roles and features»:
Теперь нам необходимо активировать службу CGI (вместе с ней активируется и модуль FastCGI)
Устанавливаем PHP5.6
Скачиваем php 5.6 (php-5.6.22-nts-Win32-VC11-x86.zip). Будем использовать Non-thread safe версию, так как FastCGI сам обеспечивает однопоточное выполнение.
Также для корректной работы php нам понадобиться пакет C++ Redistributable 2012 (https://www.microsoft.com/en-us/download/details.aspx?id=30679).
Распаковываем php в папку c:\PHP. Далее переименовываем файл php.ini-production в php.ini, открываем и устанавливаем следующие параметры:
cgi.force_redirect = 0 - рекомендуется отключить, так как не поддерживается IIS (http://php.net/manual/ru/security.cgi-bin.force-redirect.php)
open_basedir="c:\inetpub\wwwroot\wordpress"; - директория с вашим сайтом на wordpress
error_log = c:\PHP\php_errors.log - Лог файл, в котором будет отражена информация об ошибках
date.timezone = UTC
php_mysqli.dll - это расширение необходимо wordpress для работы с бд
Проверяем конфигурацию, выполнив в командной строке:
php -i
Создаём сайт в IIS
Сначала настроим обработчик для запросов к вашему сайту.
Теперь необходимо произвести некоторые настройки модуля FastCGI.
Настроим документ по умолчанию:
Теперь создадим сайт в IIS. Сначала удалим сайт по умолчанию (Default Web Site).
Наш сайт готов. Но прежде, чем пытаться получить к нему доступ по http, нам необходимо открыть 80 порт TCP.
Открываем оснастку firewall.cpl и добавляем соответствующее правило для входящих подключений:
Правило добавлено!
Далее создадим файл test.php со следующим содержимым:
<?php
phpinfo();
Поместим этот файл в корневую директорию вашего сайта (c:\inetpub\wwwroot\wordpress) и откроем в браузере ваш «сайт»: ip_вашего_сервера
Должны получить примерно следующее:
Удаляем файл test.php. Теперь можно наконец-то устанавливать WordPress.
Установка WordPress
Скачиваем WordPress (wordpress-4.5.2-ru_RU.zip).
Распаковываем архив и копируем содержимое папки wordpress в нашу корневую директорию (c:\inetpub\wwwroot\wordpress).
Теперь предоставим права на запись в директорию c:\inetpub\wwwroot\wordpress и её поддиректории группе IIS_USRS
Открываем в браузере наш сайт по адресу ip_вашего_сервера и идём по шагам установки:
Авторизуемся и попадаем в личный кабинет CMS WordPress!
Теперь откроем главную страницу по адресу ip_вашего_сервера.
Задача решена!
IIS (Internet Information Services) представляет собой набор серверов и служб, разработанный компанией Microsoft и включённый в состав операционных систем семейства Windows Server. При этом IIS предоставляет администратору возможность разместить на сервере не один, а сразу несколько веб-сайтов с разными доменными именами.
В настоящем руководстве рассмотрим, как настроить несколько сайтов в IIS на виртуальном выделенном сервере, работающем под управлением Windows Server 2016.
Поскольку для своей работы сайты будут использовать веб-сервер IIS, то предварительно необходимо на виртуальной машине установить непосредственно веб-сервер IIS.
После окончания установки IIS в Диспетчере серверов перейдите в Средства → Диспетчер служб IIS.
Затем в разделе Подключения раскройте ветку, соответствующую вашему серверу, и перейдите на строку сайты. На этой строке нажмите правую кнопку мыши и в открывшемся контекстном меню выберите Добавить веб-сайт.
В окне формы добавления сайта заполните следующие поля:
Имя сайта– введите доменное имя вашего сайта;Физический путь– укажите каталог, в котором будут размещены файлы вашего сайта;Имя узла– введите название для создаваемого узла, например, укажите доменное имя сайта.
Для создания сайта нажмите ОК.
Затем аналогичным способом создайте ещё один сайт.
Чтобы проверить работоспособность сайтов, создайте стартовую страницу для каждого из них. Например, перейдите в каталог первого сайта и создайте там файл index.html. Данный файл должен содержать HTML-разметку веб-страницы. Например, такую:
<html>
<head><title>Your Domain 1</title></head>
<body><h1>YOUR FIRST SITE CREATEAD WITH MS IIS ON YOUR VDS</h1></body>
</html>
После чего откройте браузер и в строке навигации введите доменное имя этого сайта. В нашем случае браузер должен отобразить страницу сайта your-domain1.host.
Точно так же вы можете сделать веб-страницу для второго сайта и проверить его работоспособность, указав в навигационной строке браузера соответствующее доменное имя.
Таким образом, мы разобрали, как настроить несколько сайтов в IIS. На своём виртуальном выделенном сервере вы можете разместить два и более веб-сайтов, каждый из которых будет доступен по своему доменному имени. В нашем случае веб-сервер IIS настроен на обработку всех входящих запросов к доменам your-domain1.host и your-domain2.host. При этом файлы этих сайтов расположены в отдельных каталогах нашего сервера – C:\inetpub\wwwroot\your-domain1.host и C:\inetpub\wwwroot\your-domain2.host соответственно.
Если вы не являетесь владельцем доменов, у вас всё равно есть возможность протестировать данную конфигурацию. Для этого на своём сервере внесите изменения в файл C:\WINDOWS\system32\drivers\etc\hosts. Например, добавьте в конец файла строки типа:
127.0.0.1 your-domain1.host
127.0.0.1 your-domain2.host
После сохранения изменений в файле hosts вы сможете проверить работоспособность данных сайтов, запустив браузер непосредственно на вашем виртуальном сервере.
