Як встановити IIS на Windows Server 2016 і 2019: проста інструкція для адмінів
Короткий опис: Покрокова інструкція, як встановити IIS на Windows Server, які компоненти обрати, як перевірити роботу веб-сервера та не наламати дров під час першого налаштування. Розглянемо і Windows Server 2019, і Windows Server 2016, а також базові рекомендації з безпеки.
Сценарій знайомий багатьом: є виділений сервер або віртуалка з Windows Server, керівництво хоче «щоб там працював сайт» або внутрішній портал, а вам треба швидко розібратися, як встановити IIS Windows Server, не витрачаючи півдня на документацію. Звучить просто — роль Web Server (IIS), кілька галочок — і готово. На практиці ж з’являються нюанси: які служби ролей увімкнути, що потрібно для PHP/ASP.NET, коли треба перезавантаження, чому сайт не відкривається з інших комп’ютерів, хоча «на самому сервері все працює».
Нижче — живий, практичний гайд, як встановити IIS Windows Server 2019 та Windows Server 2016 через Server Manager і PowerShell, з поясненням типових помилок, базовими налаштуваннями та невеликими лайфхаками з реальних кейсів.
Коли виникає проблема або навіщо це потрібно
Зазвичай питання «як встановити IIS Windows Server» з’являється в кількох ситуаціях:
- потрібно розгорнути тестове або бойове .NET / ASP.NET / PHP веб-застосування;
- планується внутрішній корпоративний портал (Intranet) на базі IIS;
- переводите сайт з хостингу на власний сервер у дата-центрі або в хмарі;
- розробники попросили «чистий IIS» для відлагодження бекенду;
- на сервері вже є база/служби, а тепер треба додати веб-інтерфейс.
Симптоми «не все ок» виглядають приблизно так:
- зайшли в браузер на сервері за адресою http://localhost — сторінка IIS не відкривається;
- з інших ПК сервер за IP не відкривається взагалі, хоча IIS встановлений;
- після публікації сайту замість сторінки — помилки 404/500;
- PHP або ASP.NET не працюють, файли віддаються як текст або качаються.
У більшості таких випадків проблема не «в IIS взагалі», а в тому, як саме була проведена установка: не вистачає компонентів, неправильно налаштований фаєрвол, відсутні необхідні служби для конкретної технології (CGI, ISAPI, .NET Extensibility, ASP.NET, статичний контент тощо).
Найшвидший спосіб
Якщо потрібно максимально швидко встановити IIS на Windows Server 2019 або 2016, а потім вже розбиратися з тонкими налаштуваннями, є два робочих варіанти: через Server Manager (GUI) або одним рядком PowerShell.
Швидка установка IIS через Server Manager (підходить і для Windows Server 2019, і для 2016):
- увійдіть на сервер під обліковим записом з правами адміністратора;
- відкрийте Server Manager (зазвичай відкривається автоматично після входу, або через меню Start);
- у правому верхньому куті натисніть Manage → Add Roles and Features;
- у майстрі виберіть Role-based or feature-based installation;
- оберіть ваш сервер у списку (зазвичай він там один);
- на екрані Server Roles встановіть галочку Web Server (IIS);
- у вікні, яке з’явиться, натисніть Add Features (IIS Management Console та інші базові компоненти);
- далі кілька разів Next, можна залишити типові налаштування ролей веб-сервера;
- натисніть Install та дочекайтесь завершення.
Після інсталяції відкрийте браузер на самому сервері, введіть http://localhost. Якщо бачите стандартну сторінку IIS — базова установка пройшла успішно.
Швидка установка IIS через PowerShell:
Якщо вам ближче консоль і треба зробити це десятки разів (наприклад, автоматизація в хмарі), працює простий рядок:
Для Windows Server 2016 / 2019:
Install-WindowsFeature Web-Server -IncludeManagementTools
Команда додає роль Web Server (IIS) разом з інструментами керування (IIS Manager). Для більш складних застосунків пізніше можна догрузити додаткові компоненти: ASP.NET, FTP, CGI та інші.
Покрокова інструкція
-
Підготовка та перевірка системи.
Перед тим як встановити IIS Windows Server 2016 або 2019, краще зробити кілька базових речей:
- переконайтесь, що у вас обліковий запис з правами Local Administrator;
- за можливості виконайте оновлення системи через Windows Update (особливо це актуально для старих образів Windows Server 2016);
- якщо сервер в хмарі — перевірте налаштування мережевих правил/файрволу на рівні провайдера (Security Group, Network Security Group, фільтрація портів тощо), щоб порт 80 (HTTP), а за потреби і 443 (HTTPS) були відкриті;
- сплануйте, що саме ви будете розгортати: простий статичний сайт, ASP.NET-застосунок, PHP, CRM, внутрішній портал. Від цього залежить вибір компонентів IIS.
Окремий нюанс: якщо ви працюєте з Windows Server Core (без GUI), встановлювати IIS доведеться через PowerShell. Якщо це стандартна редакція з Desktop Experience — простіше через Server Manager.
-
Основні дії та налаштування.
Нижче — детальна інструкція, як встановити IIS Windows Server 2019 та як встановити IIS Windows Server 2016 через графічний інтерфейс. У більшості кроків вони майже не відрізняються.
1. Запуск майстра додавання ролей
- відкрийте Server Manager;
- у правому верхньому меню натисніть Manage → Add Roles and Features;
- з’явиться майстер, на першому екрані можна просто натиснути Next.
2. Тип інсталяції
- оберіть пункт Role-based or feature-based installation;
- натисніть Next.
3. Вибір сервера
- на екрані Server Selection переконайтесь, що обраний потрібний сервер (частіше за все — локальний);
- натисніть Next.
4. Вибір ролі Web Server (IIS)
- на вкладці Server Roles знайдіть і поставте галочку Web Server (IIS);
- з’явиться вікно з пропозицією додати обов’язкові компоненти (зазвичай це IIS Management Console та пов’язані функції) — натисніть Add Features;
- повернетеся до списку ролей, натисніть Next.
5. Вибір додаткових компонентів (Features)
Якщо ви просто хочете запустити стандартний сайт або тестову сторінку, можна залишити все за замовчуванням і натиснути Next. Але для реальних застосунків варто одразу подумати про:
- .NET Framework 4.x Features — якщо плануєте розгортати ASP.NET 4.x;
- .NET Framework 3.5 Features — для старих застосунків (особливо корпоративних);
- у деяких гайдах рекомендують також HTTP Activation і WCF-служби, якщо цього потребує ваш софт.
6. Вибір служб ролей веб-сервера (Role Services)
Тут можна як залишити типовий набір, так і відразу увімкнути те, що знадобиться під конкретну задачу. Базовий мінімум, який майже завжди корисний:
- Web Server → Common HTTP Features:
- Static Content (статичний контент — обов’язково);
- Default Document (головна сторінка, наприклад index.html);
- HTTP Errors (обробка помилок HTTP).
- Application Development — якщо планується динамічний сайт:
- ASP.NET (відповідна версія, 4.5/4.7 для 2016/2019);
- .NET Extensibility (для тієї ж версії);
- ISAPI Extensions та ISAPI Filters;
- для PHP зазвичай вистачає CGI (або використовується FastCGI).
- Security:
- Basic Authentication — якщо потрібна базова авторизація;
- Windows Authentication — для інтеграції з доменом;
- за потреби — IP and Domain Restrictions.
- Management Tools:
- IIS Management Console — графічне керування (обов’язково для зручної роботи);
- додатково можна ввімкнути IIS Management Scripts and Tools, якщо плануєте автоматизацію.
Для простих сценаріїв (невеликий сайт, тестове оточення) достатньо базового набору, який встановлюється за замовчуванням. Для бойових систем радше варто одразу включити потрібні компоненти, щоб потім не вгадувати, чому не піднімається конкретний застосунок.
7. Підтвердження та установка
- на екрані Confirm installation selections перевіряєте список ролей і компонентів;
- за потреби ставите галочку Restart the destination server automatically if required;
- натискаєте Install та чекаєте завершення (може зайняти від кількох секунд до кількох хвилин, залежно від кількості обраних компонентів);
- після закінчення натискаєте Close.
Установка через PowerShell з розширеним набором компонентів
Для автоматизації часто використовують команди виду:
Install-WindowsFeature Web-Server, Web-Common-Http, Web-Default-Doc, Web-Static-Content, Web-Http-Errors, Web-App-Dev, Web-Asp-Net45, Web-Net-Ext45, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Mgmt-Console -IncludeManagementTools
Це вже «розширений» варіант: IIS плюс ASP.NET, ISAPI, базові HTTP-функції та консоль керування.
-
Перевірка результату та безпеки.
1. Перевірка роботи IIS локально
- на сервері відкрийте будь-який браузер (Edge/Chrome/Firefox);
- введіть у адресному рядку http://localhost;
- якщо все коректно, ви побачите стандартну стартову сторінку IIS.
Якщо сторінка не відкривається:
- переконайтесь, що служба World Wide Web Publishing Service (W3SVC) запущена (через Services.msc або services в меню Start);
- перевірте, чи не зайнятий порт 80 іншим софтом (часто це бувает з різними агентами моніторингу або сторонніми веб-серверами).
2. Перевірка доступу з іншого комп’ютера
- дізнайтесь IP-адресу сервера (ipconfig у командному рядку);
- з іншої машини в тій самій мережі відкрийте браузер і введіть http://IP_СЕРВЕРА;
- якщо сайт не відкривається, але на самому сервері працює, перевірте:
- налаштування Windows Firewall (порт 80/443);
- мережеві правила хмарного провайдера (якщо це Azure, AWS, GCP, інші);
- чи немає додаткових фаєрволів/агентів безпеки, які фільтрують вхідні з’єднання.
3. Базова перевірка безпеки
- якщо це бойовий сервер, не варто залишати всі служби ролей включеними «про всяк випадок» — зайві компоненти збільшують поверхню атаки;
- для зовнішніх веб-сайтів має сенс одразу планувати HTTPS (сертифікат, TLS-настройки);
- зайдіть в IIS Manager → виберіть сервер → Modules, Handler Mappings і впевніться, що там немає нічого зайвого, чим ви не користуєтесь;
- для внутрішніх порталів (Intranet) часто використовують Windows Authentication і відключають Anonymous там, де потрібен облік користувачів.
Корисні поради
- Якщо ви ставите IIS на Windows Server 2019 як платформу для .NET Core / .NET 6+, одразу встановіть Hosting Bundle для відповідної версії .NET, інакше застосунок може працювати нестабільно або падати з неочевидними помилками.
- На Windows Server 2016 при першій установці часто забувають про .NET Framework 3.5 Features. Якщо у вас старі корпоративні застосунки, без них вони можуть просто не стартувати.
- Для PHP-навантаження краще одразу налаштувати режим FastCGI, а не «звичайний» CGI, і не тримати все на дефолтних тайм-аутах — це часто причина «підвішаних» сайтів при великій кількості запитів.
- Якщо сервер використовується і як файлопомінник, і як веб-сервер, стежте, щоб сторонні програми не вішалися на порт 80/443. Один із типових «диких» кейсів — встановили якусь панель керування або «агента» від провайдера, який тихо підняв свій власний веб-сервер і перехопив порт.
- Маловідомий лайфхак: якщо потрібно швидко перевірити, що IIS віддає саме ваш сайт, а не кеш/проксі — створіть тимчасовий текстовий файл health.txt у корені сайту з унікальним вмістом (наприклад, випадковий GUID) і викличте його напряму: http://IP/health.txt. Так легко «відловити» ситуації, коли ви дивитесь не на той сервер через балансувальник або DNS.
Поширені помилки
Кілька типових багів, з якими стикаються ті, хто перший раз вирішив розібратися, як встановити IIS Windows Server 2019 або 2016.
1. IIS встановлений, але сайт не відкривається з мережі
Симптоми:
- на самому сервері http://localhost працює;
- з іншого ПК http://IP_СЕРВЕРА не відкривається або тайм-аут.
Причини:
- Windows Firewall блокує порт 80/443;
- у хмарі або на хостингу закриті вхідні порти;
- на стороні мережевого обладнання (роутер, UTM, апаратний фаєрвол) не налаштований проброс портів.
Як виправити:
- перевірити локальний фаєрвол — додати правило для порта 80/443 або використати вбудований профіль для веб-сервера;
- перевірити правила безпеки в хмарі (Security Group / Network ACL);
- якщо сервер за NAT — налаштувати порт-форвардинг.
2. Не встановлені потрібні компоненти (ASP.NET / CGI / ISAPI)
Симптом:
- замість роботи застосунку викидаються помилки 500, 500.19, іноді 404 для .aspx, .php, .svc;
- статичні файли (HTML/CSS/JS) віддаються без проблем.
Типова ситуація: при установці залишили тільки базовий Web Server (IIS), без Application Development. В результаті IIS не вміє виконувати ваш код, він просто не знає, що робити з цими розширеннями.
Як виправити:
- знову зайти в Server Manager → Add Roles and Features;
- у розділі Role Services для IIS додати:
- ASP.NET відповідної версії;
- .NET Extensibility;
- ISAPI Extensions / ISAPI Filters;
- CGI / FastCGI (для PHP);
- дочекатися догрузки компонентів, перезапустити IIS або сервер.
3. Перекриття порту 80 іншим застосунком
Симптом:
- служба IIS не стартує, помилки в логах на тему неможливості відкрити порт;
- або стартує, але сайт працює нестабільно, частина запитів падає.
Причина — інший софт вже використовує порт 80/443 (часто це вбудовані веб-інтерфейси різних сервісів).
Як виправити:
- виконати в командному рядку netstat -ano | find “:80” і подивитись, який PID займає порт;
- через Task Manager або tasklist /FI “PID eq ХХХХ” знайти процес;
- або змінити налаштування того застосунку, або перевести IIS на інший порт (у бойових системах краще звільнити порт 80 саме для IIS).
4. Відсутній доступ до IIS Manager
Буває, що IIS наче встановлений, але знайти Internet Information Services (IIS) Manager в меню Start не виходить.
Найчастіша причина — під час установки не був доданий компонент IIS Management Console. Без нього IIS працює, але керувати ним доводиться через PowerShell або вручну в конфіг-файлах.
Рішення — повторно відкрити майстер ролей, перейти в IIS → Management Tools, ввімкнути IIS Management Console і догрузити компонент.
5. «Залишили все за замовчуванням» на бойовому сервері
Це не технічна помилка, але дуже поширений сценарій. Розгорнули сервер, поставили IIS «як є», з усіма за замовчуванням увімкненими можливостями, опублікували назовні — через рік знайшли в логах дивні запити до непотрібних хендлерів, а інколи й інциденти безпеки.
Як уникнути:
- не вмикайте зайві служби ролей — тільки те, що реально використовується;
- проведіть базовий харднінг IIS (обмеження заголовків, відключення застарілих протоколів, мінімальний набір модулів);
- регулярно оновлюйте систему і стежте за вразливостями, пов’язаними з IIS і .NET.
Часті запитання
Як встановити IIS Windows Server 2019 найпростішим способом?
Найпростіше — через Server Manager: зайти як адміністратор, відкрити Manage → Add Roles and Features, обрати Role-based or feature-based installation, відмітити роль Web Server (IIS), додати рекомендовані Features і натиснути Install. Після цього перевірити http://localhost.
Чим відрізняється установка IIS на Windows Server 2016 від 2019?
Інтерфейс майже однаковий: той самий Server Manager, ті самі кроки в майстрі. Основна різниця — у версії IIS та доступних версіях .NET/ASP.NET, але сама процедура «windows server 2016 як встановити iis windows server» така ж, як і для 2019.
Як встановити iis windows server через PowerShell, без Server Manager?
Відкрийте PowerShell з правами адміністратора і виконайте команду Install-WindowsFeature Web-Server -IncludeManagementTools. За потреби можна додати інші компоненти, наприклад Web-Asp-Net45, Web-ISAPI-Ext, Web-Mgmt-Console тощо.
Як перевірити, що IIS працює після установки?
Зайдіть у браузер безпосередньо на сервері та введіть http://localhost. Якщо відкривається стандартна стартова сторінка IIS, роль встановлена і працює. Для перевірки з мережі використовуйте http://IP_СЕРВЕРА і перевірте фаєрвол.
Що потрібно додатково встановити, щоб ASP.NET працював на IIS?
При установці ролі IIS увімкніть у розділі Application Development компоненти ASP.NET відповідної версії, .NET Extensibility, а також ISAPI Extensions і ISAPI Filters. Без них IIS не буде коректно виконувати ASP.NET-застосунки.
Чи можна встановити IIS на Windows Server з Core-інтерфейсом?
Так. На Windows Server Core все робиться через PowerShell: команда Install-WindowsFeature Web-Server -IncludeManagementTools. Для керування можна використовувати віддалений IIS Manager з іншої машини або PowerShell-скрипти.
Чому після установки IIS сайт не відкривається по IP з іншого ПК?
Найчастіше причина — заблокований порт 80/443 фаєрволом (локальним або хмарним), неправильні мережеві правила або NAT. Переконайтесь, що правила дозволяють вхідні з’єднання до веб-сервера, а сам сайт запущений у IIS та прив’язаний до потрібного IP/порта.
Як додати підтримку PHP на IIS Windows Server?
Під час установки ролі або пізніше увімкніть компонент CGI (або FastCGI) у розділі Application Development. Потім встановіть PHP (краще через офіційний дистрибутив для IIS або вручну), налаштуйте відповідні Handler Mappings у IIS і перевірте виконання phpinfo.
Чи потрібно перезавантажувати сервер після установки IIS?
Не завжди, але інколи Windows просить перезавантаження, особливо якщо догружаються .NET-компоненти або системні бібліотеки. Якщо ви не дозволили автоматичний перезапуск у майстрі, після інсталяції краще перезавантажити сервер вручну, щоб уникнути «дивних» глюків.
Чи безпечно залишати всі служби IIS увімкненими за замовчуванням?
Для тестового середовища це допустимо, але для продакшн-сервера краще вимкнути все зайве. Зайві модулі та служби ролей збільшують поверхню атаки. Рекомендується залишати тільки ті компоненти, які реально використовуються застосунком.
Читайте також
Якщо розгортаєте IIS як частину більшого проєкту або хочете підтягнути знання з безпеки та роботи з мережевими сервісами, можуть стати в пригоді ці розділи нашого блогу:
- Браузери — як налаштувати браузер для роботи з внутрішніми порталами, самопідписаними сертифікатами та корпоративними сайтами.
- WINDOWS — практичні матеріали по адмініструванню Windows Server і робочих станцій.
- Програми — утиліти для адміністраторів, інструменти для тестування веб-сервісів, моніторинг, клієнти для підключення до серверів.
- Інтернет безпека — базові принципи захисту веб-серверів, шифрування, робота з паролями та обліковими записами.
- VPN — як організувати безпечний віддалений доступ до внутрішніх веб-ресурсів на IIS через VPN.
Закладки
Якщо вам була корисна ця інструкція з того, як встановити IIS Windows Server, додайте наш блог про інтернет безпеку у закладки — тут регулярно з’являються нові практичні матеріали по Windows, серверам та захисту інфраструктури.
Натисніть Ctrl + D

