В данной статье мы установим и проведем базовые настройки веб-сервера 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
вы сможете проверить работоспособность данных сайтов, запустив браузер непосредственно на вашем виртуальном сервере.