Як запустити сайт на IIS: проста інструкція для Windows Server 2016 та 2019
Короткий опис: Покрокова інструкція, як запустити сайт на IIS на Windows Server 2016 та Windows Server 2019: установка ролі веб-сервера, створення сайту, налаштування порту, доменного імені, перевірка роботи та типові помилки.
Як це зазвичай виглядає на практиці: ви орендуєте сервер, заходите по RDP, бачите «голий» Windows Server 2016 або 2019 і десь в технічному завданні чи інструкції написано «налаштувати IIS і запустити сайт». А далі – або хаотичний пошук скріншотів у Google, або спроби згадати, де в тому Server Manager ховається роль Web Server (IIS), чому сайт не відкривається по домену і чому все працює лише по http://localhost.
У цій інструкції зберемо все в один ланцюжок: від «Windows Server 2019 – як запустити сайт на IIS з нуля» до реальної перевірки в браузері. Те саме підходить і для «Windows Server 2016 – як запустити сайт на IIS» – відмінності мінімальні, інтерфейс майже ідентичний.
Коли виникає проблема або навіщо це потрібно
Сценарії зазвичай типові:
- переносите сайт з хостингу на свій VPS / виділений сервер з Windows Server;
- вам видали тестовий сервер для внутрішнього порталу компанії, потрібно швидко підняти сайт на IIS;
- розробник просить «видати йому IIS з доступом» – а ви якраз той, хто це має налаштувати;
- хочете розгорнути простий сайт на .NET, PHP чи навіть статичний HTML прямо на Windows Server.
Типові симптоми, коли щось пішло не так:
– сайт відкривається тільки по localhost, але не по IP або домену;
– замість вашого сайту видно стандартну сторінку IIS;
– браузер пише, що «сторінка недоступна» або довго думає і робить timeout;
– ви додали сайт у IIS, але порт уже зайнятий, або IIS мовчки показує інший сайт.
Головний плюс IIS у тому, що це стандартний веб-сервер для Windows, інтегрований у систему. Він нормально працює як з простими HTML-сторінками, так і з ASP.NET, класичним .NET Framework, .NET 6/7 (через окремий хостинг), може дружити з PHP, працювати за HTTPS, підтримувати SNI, логування, модулі, окремі пулі застосунків тощо.
Найшвидший спосіб
Якщо вам потрібен максимально швидкий старт без зайвої теорії – базовий сценарій виглядає так:
- Установити роль Web Server (IIS) через Server Manager → Manage → Add Roles and Features.
- Створити папку сайту, наприклад C:\Sites\MySite, покласти туди index.html або стартовий файл вашого застосунку.
- Відкрити IIS Manager (натиснути Win, ввести «IIS» або inetmgr у вікні Run).
- У дереві зліва відкрити вузол сервера → Sites → права кнопка → Add Website….
- Заповнити:
- Site name – довільна назва (наприклад, MySite);
- Physical path – шлях до папки сайту (C:\Sites\MySite);
- Type – HTTP;
- Port – 80 або інший вільний порт (8080, 8081);
- Host name – ваш домен (якщо вже є DNS);
- Натиснути OK, переконатися, що сайт у статусі Started.
- Відкрити браузер на сервері і спробувати:
- http://localhost/ або http://localhost:порт/;
- потім – з вашого комп’ютера по IP або домену.
Це базовий відповідь на запит «як запустити сайт на IIS». Далі – більш детально, із нюансами саме для Windows Server 2016/2019.
Покрокова інструкція
-
Підготовка та перевірка системи
Перш ніж думати, як запустити сайт на IIS, треба переконатися, що сам веб-сервер встановлено і порт не заблокований.
1. Перевіряємо, чи встановлено IIS
На Windows Server 2016/2019:
- натисніть Start → відкрийте Server Manager;
- у правому верхньому куті – меню Manage → Add Roles and Features;
- натискаєте Next, поки не дійдете до розділу Server Roles;
- знайдіть пункт Web Server (IIS);
- якщо він вже відмічений – IIS установленo;
- якщо ні – поставте галочку, погодьтесь додати потрібні компоненти і продовжіть.
Далі кілька разів Next, перевірка обраних компонентів і Install. Після інсталяції бажано перезавантажити сервер, навіть якщо майстер про це не просить – особливо на свіжій системі.
2. Швидка перевірка роботи IIS
Після установки відкрийте браузер на самому сервері і введіть:
http://localhost
Якщо бачите стандартну «синю» сторінку IIS – веб-сервер працює. Це означає, що базова відповідь на питання «Windows Server 2019 – як запустити сайт на IIS» вже наполовину виконана.
3. Готуємо папку для сайту
Щоб не перетворювати системні директорії на звалище, краще завести окрему структуру для сайтів. Наприклад:
- C:\Sites\ – корінь для всіх сайтів;
- C:\Sites\mysite.ua\www – папка конкретного сайту.
Створіть потрібну папку (через Explorer або PowerShell), покладіть туди хоча б тестовий файл:
- index.html з простим текстом на кшталт «Hello from IIS»;
- або вже ваш реальний сайт (файли статичного сайту, .NET застосунок тощо).
Бажано, щоб ім’я стартового файлу відповідало налаштуванням Default Document в IIS (типово там default.htm, default.asp, index.html, index.aspx і т.д.). Якщо у вас інша назва, або розширення, перевірте цей список в налаштуваннях сайту.
-
Основні дії та налаштування
1. Запускаємо IIS Manager
- натисніть Win + R, введіть inetmgr і натисніть Enter;
- або через Start – напишіть «IIS», виберіть Internet Information Services (IIS) Manager.
У лівій панелі ви побачите ім’я сервера, під ним – дерево налаштувань, у тому числі вузол Sites.
2. Створення нового сайту в IIS
Ось тут починається власне те, про що більшість і запитує: «як запустити сайт на iis, куди що вписувати?».
- у лівій панелі правою кнопкою миші клацніть по Sites;
- оберіть Add Website…;
- відкриється вікно створення сайту.
Основні поля:
Поле Що це Приклад Site name Внутрішня назва сайту в IIS, на роботу ззовні не впливає mysite.ua або MyTestSite Application pool Пул застосунку, в якому працює сайт (окремий процес/налаштування) DefaultAppPool або новий пул Physical path Фізичний шлях до папки сайту C:\Sites\mysite.ua\www Type Протокол – HTTP або HTTPS HTTP (для старту) IP address IP, на якому слухатиме сайт All Unassigned або конкретний IP сервера Port Порт сайту 80, 8080, 8081… Host name Доменне ім’я, яке буде «прив’язано» до цього сайту mysite.ua Якщо у вас один сайт і він повинен відповідати на порту 80 по IP – можна:
- Type: http;
- IP: All Unassigned;
- Port: 80;
- Host name: поки що порожній (або одразу домен, якщо DNS уже налаштовано).
Якщо на сервері буде кілька сайтів на одному IP, тоді важливо:
- або розводити їх по різних портах (80, 8080, 8081…);
- або використовувати Host name (SNI для HTTPS і хост-заголовок для HTTP).
Для простого сценарію «Windows Server 2019 – як запустити сайт на IIS» цілком вистачає одного IP, порту 80 і вказаного доменного імені.
3. Перевірка та запуск сайту
- після натискання OK сайт з’явиться під вузлом Sites;
- зверніть увагу на його статус – Started або Stopped;
- якщо сайт зупинено – у правій панелі оберіть Start для запуску.
Далі крок, який часто пропускають: переконайтесь, що у вас немає конфлікту прив’язок (bindings). Наприклад, якщо на тому ж порту 80 вже висить Default Web Site, може статися, що відповідає взагалі не ваш сайт.
Найкраща практика – або змінити порт/хостнейм нового сайту, або відключити Default Web Site (Stop), якщо він не потрібен.
4. Налаштування bindings (прив’язок)
- виділіть ваш сайт у IIS;
- праворуч натисніть Bindings…;
- переконайтеся, що там:
- Type: http;
- IP: правильний (або All Unassigned);
- Port: той, що ви очікуєте;
- Host name: ваш домен, якщо використовуєте домен.
Якщо домен уже прописаний у DNS (A-запис на IP сервера), через кілька хвилин – годину сайт має відкриватися по доменному імені з будь-якого пристрою в інтернеті.
5. Windows Server 2016 та 2019: нюанси
Для запиту «windows server 2016 як запустити сайт на iis» і «windows server 2019 як запустити сайт на iis» алгоритм однаковий:
- інтерфейс Server Manager дуже схожий;
- роль Web Server (IIS) ставиться через той самий майстер Add Roles and Features;
- IIS Manager виглядає майже ідентично.
Різниця більше у версіях .NET, оновленнях безпеки, підтримці новіших протоколів, але для запуску простого сайту схема та сама.
-
Перевірка результату та безпеки
1. Локальна перевірка
Спочатку провіряємо на самому сервері:
- відкрийте браузер (Edge/Chrome/Firefox);
- спробуйте:
- http://localhost (якщо ваш сайт слухає порт 80 без хостнейму);
- http://localhost:8080 (якщо вибрали інший порт);
- http://IP-сервера або http://IP:порт.
Якщо бачите ваш index.html чи головну сторінку – на сервері все ок.
2. Перевірка ззовні
- з вашого локального комп’ютера відкрийте браузер;
- введіть http://IP-сервера (або домен, якщо вже налаштований DNS);
- якщо сторінка не відкривається – перевірте:
- налаштування Windows Firewall на сервері;
- правила безпеки в панелі керування вашого VPS/хостинг-провайдера (Security Groups, firewall на рівні провайдера);
- чи не блокує порт 80/8080 зовнішній фаєрвол.
3. Базові рекомендації по безпеці
- Не лишайте тестові сайти та дефолтний Default Web Site, якщо він не потрібен.
- Не використовуйте адмін-панелі, тестові скрипти та «phpinfo» у відкритому доступі.
- Якщо сайт буде публічним – якнайшвидше додайте HTTPS (сертифікат, binding типу https).
- Регулярно встановлюйте оновлення Windows Server – вони часто закривають критичні діри в IIS та .NET.
Корисні поради
- Якщо запускаєте кілька сайтів на одному сервері, одразу продумайте схему: або різні домени на одному порту 80, або різні порти. Змішувати «як вийде» – найкоротший шлях до плутанини, коли по IP відкривається зовсім інший сайт.
- Для стабільності створюйте окремий Application Pool для кожного важливого сайту. Це дозволяє перезапускати один пул без падіння інших проектів і змінювати версію .NET під конкретну програму.
- Якщо сайт «іноді відпадає», але IIS формально працює – перевірте recycling у налаштуваннях пулу застосунків (час, пам’ять) і логи Event Viewer. Часто причина не у «поганому IIS», а в налаштуваннях пулу.
- Для простих HTML/JS-сайтів достатньо мінімальних компонентів IIS, а от для PHP чи старих ASP-додатків іноді потрібно додатково увімкнути CGI / ISAPI Extensions / ASP – це все вмикається в Add Roles and Features → Application Development.
- Маловідомий лайфхак: якщо ви часто переносите сайти між серверами, можна експортувати конфіг сайтів з IIS у файл (Backup/Export Configuration) і швидко імпортувати на іншому сервері – це сильно економить час при міграціях.
Поширені помилки
Кілька типових історій, з якими звертаються адміністратори та розробники:
1. Сайт відкривається тільки по localhost
Симптоми:
– на сервері http://localhost працює;
– але по IP або домену ззовні – ні.
Причини:
- порт 80/8080 закритий на файрволі Windows або в панелі управління сервером;
- у bindings сайту вказано не той IP або вказано конкретний IP, якого на інтерфейсі вже немає;
- DNS для домену ще не оновився (A-запис не встиг розійтися по інтернету).
Як виправити:
- відкрити порт у Windows Defender Firewall (Inbound Rule для TCP 80/443/обраного порту);
- перевірити bindings сайту і IP-адресу;
- почекати 10–60 хвилин після зміни DNS, іноді до 24 годин.
2. Замість мого сайту відкривається Default Web Site
Це класика. Ви створюєте сайт, а в браузері все одно синя сторінка IIS або контент іншого сайту.
Причини:
- обидва сайти слухають один і той самий IP і порт, але без різних host name;
- браузер звертається по IP, а ваш сайт прив’язаний тільки до домену.
Як виправити:
- зупинити Default Web Site, якщо він не потрібен;
- або змінити прив’язку (binding) – інший порт, інший host name;
- переконатися, що тестуєте саме за тим доменом/портом, який вказаний у bindings.
3. Помилка 403 або 404 при відкритті сайту
Симптоми:
– 403 – доступ заборонено;
– 404 – файл не знайдено, хоча фізично він є.
Можливі причини:
- немає стартового файлу, який відповідає Default Document (наприклад, index.html відсутній);
- папка сайту має не ті права доступу для учетного запису пулу застосунків;
- в корені сайту лежить web.config, який ламає маршрути або забороняє доступ.
Рішення:
- додати або перейменувати головний файл у один із дозволених стартових;
- перевірити права NTFS (IIS_IUSRS / користувач пулу) на папку сайту;
- тимчасово прибрати підозрілий web.config і перевірити, чи сайт відкривається.
4. Порт уже зайнятий, сайт не запускається
При додаванні сайту IIS повідомляє, що порт зайнятий, або сайт не стартує.
Як перевірити:
- у командному рядку з правами адміністратора:
netstat -ano | find “:80” - подивитися PID процесу, який тримає порт;
- через Task Manager зрозуміти, що це за процес (IIS, інша програма і т.д.).
Як виправити:
- перенести ваш сайт на інший порт (наприклад, 8080);
- або зупинити/переналаштувати ту службу, яка займає порт;
- аби уникнути хаосу – завести таблицю «сайт → порт» для сервера.
5. Забули про HTTPS, браузер лякає користувачів
На старті всі думають лише про «щоб воно хоч якось працювало», але потім Chrome/Edge малюють червоні попередження через HTTP.
Як мінімізувати проблеми:
- спершу запустіть сайт по HTTP – переконайтеся, що логіка працює;
- потім додайте SSL-сертифікат (комерційний або Let’s Encrypt через сторонні утиліти) і створіть https-binding з потрібним сертифікатом;
- налаштуйте редірект з HTTP на HTTPS (через web.config або URL Rewrite).
Часті запитання
1. Як запустити сайт на IIS на Windows Server 2019, якщо я ніколи не працював з IIS?
Алгоритм такий: встановлюєте роль Web Server (IIS) через Server Manager, створюєте папку сайту, кладете туди файл index.html, відкриваєте IIS Manager, додаєте новий сайт (Add Website), вказуєте шлях до папки, порт і, за потреби, домен, запускаєте сайт і перевіряєте в браузері по IP або домену.
2. Windows Server 2016 – як запустити сайт на IIS, чи відрізняється це від 2019?
По кроках практично нічим: той самий Server Manager → Add Roles and Features → Web Server (IIS), той самий IIS Manager, такі самі Sites → Add Website. Відмінність лише у версіях компонентів та оновленнях, але для запуску сайту інструкція однакова.
3. Що вписувати в Host name при створенні сайту в IIS?
Якщо у вас є домен (наприклад, mysite.ua) і ви вже зробили A-запис на IP сервера – вписуйте цей домен у поле Host name. Це дозволить мати кілька сайтів на одному IP. Якщо домену немає або ви тестуєте по IP/порту – поле Host name можна лишити порожнім.
4. Як дізнатися, чому сайт на IIS не відкривається?
Перевіряйте по ланцюжку: чи працює http://localhost на сервері, чи сайт у статусі Started в IIS, чи правильно налаштовано bindings (IP+порт+host name), чи не блокує порт фаєрвол, чи є правильний DNS-запис для домену. Якщо все це ок – дивіться логи IIS (папка inetpub\logs\LogFiles) і Event Viewer.
5. Чим відрізняється запуск сайту на IIS від запуску на Apache або Nginx?
Головна різниця у тому, що IIS – рідний веб-сервер для Windows, з графічною консоллю, інтеграцією з Active Directory, зручним керуванням пулом застосунків. У Apache/Nginx багато що робиться через конфіг-файли. Якщо у вас Windows Server 2016 чи 2019 – логічно скористатися саме IIS.
6. Як запустити сайт на IIS на нестандартному порту, наприклад 8080?
Під час створення сайту в IIS у полі Port просто вкажіть 8080 замість 80. Потім відкрийте цей порт у фаєрволі. Доступ до сайту буде за адресою виду http://IP-сервера:8080 або http://домен:8080, якщо DNS вказує на цей сервер.
7. Можна запустити на IIS одразу кілька сайтів?
Так, це звичайна практика. Варіанти: різні порти (80, 8080, 8081…), різні домени на одному порту (через Host name), різні IP-адреси. Головне – щоб у bindings не було конфліктів і за кожним доменом/портом був свій сайт.
8. Що робити, якщо після встановлення веб-сервера IIS Server Manager просить перезавантажити сервер?
Краще погодитися і перезавантажити. Хоча іноді IIS працює і без цього, перезапуск гарантує коректне застосування всіх компонентів, особливо якщо ви паралельно ставили .NET, CGI або інші модулі.
9. Як перевести вже працюючий сайт на HTTPS в IIS?
Спочатку отримайте SSL-сертифікат (у вигляді PFX або встановлений у сховище сертифікатів). Потім у IIS відкрийте Bindings сайту, натисніть Add, виберіть Type: https, порт 443, вкажіть потрібний сертифікат. Після цього можна налаштувати редірект з HTTP на HTTPS через web.config або модуль URL Rewrite.
10. Чому мій .NET-додаток не працює, хоча статичні сторінки на IIS відкриваються?
Для .NET потрібні відповідні компоненти (ASP.NET, .NET Extensibility, ISAPI Extensions) і правильна версія .NET Framework/ASP.NET Core. Перевірте, чи вибрано потрібний Application Pool, чи увімкнено відповідні рольові сервіси в Add Roles and Features, і чи не валиться програма з помилкою в логах подій.
Читайте також
Якщо ви працюєте з IIS, серверами та публічними сайтами, будуть корисні й інші розділи нашого блогу:
Закладки
Якщо вам була корисна ця інструкція з того, як запустити сайт на IIS на Windows Server, додайте наш
блог про інтернет безпеку
у закладки.
Натисніть Ctrl + D

