Гид по технологиям

IIS: локальный хостинг сайта и тестирование

7 min read Windows Обновлено 04 Dec 2025
IIS: локальный хостинг сайта и тестирование
IIS: локальный хостинг сайта и тестирование

TL;DR

Кратко: включите IIS в Windows через меню “Включение или отключение компонентов Windows”, поместите файлы сайта в C:\inetpub\wwwroot\MyTestWebsite, добавьте сайт в IIS и запустите по HTTPS. Используйте самоподписной сертификат для локальной разработки и следуйте чеклисту безопасности при публикации в прод.

Что такое Internet Information Services

Internet Information Services (IIS) — это веб‑сервер от Microsoft, который обслуживает статические и динамические сайты. Веб‑сервер принимает HTTP/HTTPS‑запросы и возвращает контент: HTML, JavaScript, изображения и медиаконтент. Для локальной разработки IIS помогает воспроизвести поведение продакшен‑окружения.

Краткое определение: веб‑сервер — программа, которая отвечает на запросы браузера и отдаёт файлы или генерируемый контент.

Некоторые фреймворки (например, Angular) включают простой встроенный сервер для превью на localhost, но для сценариев с WebGL, ASP.NET или когда необходима конфигурация HTTPS/Host header/URL Rewrite, лучше установить полноценный веб‑сервер, такой как IIS.

Ноутбук перед окном с кодом на экране

Перед началом

Важно:

  • Работайте под учётной записью администратора при включении компонентов Windows и настройке портов.
  • Для тестов HTTPS можно использовать самоподписной сертификат, но браузеры будут предупреждать о ненадёжном сертификате.
  • При переносе сайта в прод используйте доверенный сертификат и правильные записи DNS.

Как включить IIS

  1. Откройте меню “Включение или отключение компонентов Windows” (Turn Windows Features On or Off). Можно найти через поиск в панели задач.

  2. В списке отметьте “Internet Information Services” и необходимые подпункты. Чем больше функций вы отметите — тем больше возможностей (например, FTP, ASP.NET, CGI). Для простого статического сайта хватит базовых компонентов.

  3. Нажмите “ОК” и дождитесь завершения установки. Windows может предложить перезагрузку.

  4. После установки найдите приложение “Internet Information Services (IIS) Manager” через поиск и откройте его.

  5. Search for Turn Windows Features On and Off using the search bar:Turn Windows Features on or off in the search bar

  6. Select the Internet Information Services option:IIS enabled in Turn Windows Features on or off menu

  7. Expand Internet Information Services, and select all the sub-features you require:IIS enabled in Turn Windows Features on or off menu

  8. Click OK, and wait for Windows to apply the new changes. In the future, if you decide to remove or change any features, Windows may ask you to restart your computer before applying them.

  9. Search for the IIS application, which will now be available to open on your Windows computer:Searching for IIS in the Windows searchbar

  10. Open IIS to view the IIS console:IIS Console

Как создать простой тестовый сайт

Ниже — минимальный пример статического сайта из index.html и styles.css, чтобы проверить работу IIS.

  1. Создайте папку C:\inetpub\wwwroot\MyTestWebsite.

  2. Создайте файл index.html с содержимым ниже. Этот файл — стартовая страница сайта.




   Simple Test Website 
  
  
  
  
  


  
  

This is a test website

  1. Создайте файл styles.css со стилями ниже:
* {
  font-family: sans-serif;
}

.nav {
  border-radius: 0px !important;
  color: white;
}

.link {
  margin-right: 10px;
  font-size: 12pt;
}

.brand {
  margin-left: 20px;
  margin-right: 40px;
  font-size: 18pt;
}

.container {
  text-align: center;
  padding: 40px 20px;
}
  1. Скопируйте index.html и styles.css в C:\inetpub\wwwroot\MyTestWebsite.

Окно Проводника с файлами тестового сайта

Как добавить и настроить сайт в IIS

  1. В консоли IIS в левой панели правой кнопкой по Sites.

  2. Выберите Add Website из контекстного меню.

Right click on Sites folder showing Add Website option

  1. В поле Site name введите, например, “My Test Website”. Поле Application pool заполнится автоматически.

Input field to add a website name

  1. Укажите Physical path — путь к папке C:\inetpub\wwwroot\MyTestWebsite. Нажмите три точки и выберите папку.

Input field to add physical path to where website files are stored

  1. В поле Type выберите https и настройте Port (по умолчанию 443). Если порт занят, укажите другой.

Type and Port in IIS Settings

  1. Хостнейм можно оставить пустым для локального теста. В SSL Certificate выберите IIS Express Development Certificate или другой сертификат, который вы установили.

Default SSL Certificate selected

  1. Поставьте флажок Start Website immediately и нажмите OK.

  2. Выделите созданный сайт в левой панели и откройте Advanced Settings. В разделе Behavior измените Enabled Protocols на “https” и примените изменения.

IIS panel with Advanced Settings on the right

Enable Protocols set to https

  1. Для редактирования параметров в любой момент используйте Basic Settings и Advanced Settings в правой панели.

Как запустить, остановить и перезапустить сайт

  1. В правой панели выберите Browse *:443 (https) чтобы открыть сайт в браузере.

IIS Panel with Browse 443 option on the right-hand side

  1. Откроется URL https://localhost/. Если браузер предупреждает о ненадёжном соединении — это обычная реакция на самоподписной сертификат.

Preview of test website in the browser

  1. Чтобы остановить или перезапустить сайт, используйте Stop или Restart в правой панели.

Stop Start and Restart options in the IIS panel

Тестирование и отладка

Проверки перед показом сайта коллегам или заказчику:

  • Откройте https://localhost/ в нескольких браузерах.
  • Проверьте консоль разработчика на ошибки скриптов и загрузки ресурсов.
  • Убедитесь, что все относительные пути к CSS/JS/изображениям корректны.
  • Если сайт использует WebGL (Unity WebGL), обязательно обслуживайте файлы через веб‑сервер, иначе загрузка сцены выдаст ошибку.

Типичные проблемы и их признаки:

  • Ошибка 403 — права доступа к папке или файлу. Проверьте NTFS‑разрешения и пользователя пула приложений.
  • Ошибка 404 — неверный Physical path или опечатка в имени файла.
  • Ошибки сертификата — браузер не доверяет самоподписному сертификату.

Когда IIS не подходит или возникают ограничения

Контрпримеры и альтернативы:

  • Для быстрой проверки статического HTML достаточно Python SimpleHTTPServer (python -m http.server) или Node.js http-server.
  • Для контейнеризованных проектов часто удобнее Nginx в Docker — легче реплицировать окружение продакшена.
  • Если нужен легковесный сервис для разработки с автоматической перезагрузкой, используйте встроенные dev‑серверы фреймворков (например, ng serve для Angular).

Выбор по матрице простоты и контроля:

  • Простота и скорость: встроенный dev‑сервер или python http.server.
  • Контроль и соответствие проду: IIS (Windows) или Nginx/Apache (Linux) в конфигурации, близкой к продакшену.

Мини‑методика развертывания тестового сайта в IIS

  1. Включить IIS и нужные компоненты.
  2. Создать папку сайта в C:\inetpub\wwwroot\ и скопировать файлы.
  3. Добавить сайт в IIS, указать Physical path и назначить порт/тип (HTTPS).
  4. Установить и выбрать сертификат для HTTPS (самоподписной для локали).
  5. Запустить сайт, пройти чеклист тестирования.
  6. При переходе в прод заменить сертификат на доверенный и настроить DNS.

Критерии приёмки

Сайт считается корректно настроенным, если выполнены все пункты:

  • Сайт доступен по https://localhost/ без 4xx/5xx ошибок при загрузке статических ресурсов.
  • Главная страница загружается, стили и скрипты применены.
  • При необходимости WebGL или динамические запросы работают без ошибок CORS или неверных путей.
  • Пул приложений запущен и не падает при обращении.

Чеклист перед публикацией в продакшен

  • Проверить и заменить самоподписной сертификат на доверенный.
  • Настроить безопасные заголовки (Content-Security-Policy, X-Content-Type-Options, X-Frame-Options).
  • Включить логирование и ротацию логов.
  • Проверить права доступа к файлам и пулам приложений.
  • Настроить резервное копирование файлов и конфигурации IIS.

Базовые рекомендации по безопасности

  • Используйте HTTPS везде; не оставляйте сайт доступным по HTTP без редиректа.
  • Закройте ненужные модули IIS, минимизируйте поверхность атаки.
  • Для динамических приложений применяйте обновления фреймворка и .NET.
  • Ограничьте доступ к панели управления IIS локально и через специальные административные сети.

Миграция в прод и совместимость

  • На прод используйте сертификат от доверенного CA и правильные DNS‑записи.
  • Проверьте совпадение версий IIS и модулей с окружением продакшена.
  • Для облачных сред рассмотрите использование контейнеров или управляемых веб‑хостингов вместо локального IIS.

Таблица быстрого выбора способа хостинга для локальных тестов

  • Быстрый просмотр статического HTML: python -m http.server или double‑click index.html (кроме WebGL).
  • WebGL или специфичный для браузера функционал: IIS или другой полноценный веб‑сервер.
  • Контейнеризация и совместимость с прод: Docker + Nginx.

Роль‑ориентированные задачи

  • Разработчик: создать файлы, проверить работу JS/CSS, воспроизвести баги локально.
  • DevOps: настроить IIS, сертификаты, права, логирование.
  • QA: пройти чеклист приёмки, проверить кросс‑браузерность.

Короткое руководство по отладке ошибок доступа

  1. 403 Forbidden: проверьте права NTFS и учетную запись пула приложений.
  2. 404 Not Found: проверьте Physical path и имена файлов.
  3. Сертификат: откройте “certmgr.msc” и проверьте доверительные корневые для самоподписных сертификатов локально.
  4. Логи: включите Failed Request Tracing в IIS для детального разбора ответов.

Итог

IIS — удобный инструмент для локального хостинга и тестирования сайтов на Windows, особенно если в продакшене используется Microsoft‑стек. Для простых статических сайтов подойдут и более лёгкие решения, но для корректной проверки HTTPS, URL Rewrite и других серверных особенностей лучше настроить полноценный сервер.

Ключевые шаги: включите IIS, создайте папку сайта, добавьте сайт в IIS с HTTPS, протестируйте и примените базовые меры безопасности. При переносе в прод замените сертификаты и проверьте конфигурацию окружения.

Примечание

Если вы столкнулись с проблемами, которые не описаны в статье, опишите точные сообщения об ошибке и шаги воспроизведения — это ускорит диагностику.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как найти iPhone: Find My в iOS 15 и новее
Безопасность мобильных

Как найти iPhone: Find My в iOS 15 и новее

Включение TLS 1.0 и 1.1 в Windows 11
Безопасность

Включение TLS 1.0 и 1.1 в Windows 11

Как подключить PS4 к Wi‑Fi в гостинице
Гайды

Как подключить PS4 к Wi‑Fi в гостинице

Fix Cxuiusvc: устранение высокой загрузки ЦП
Windows

Fix Cxuiusvc: устранение высокой загрузки ЦП

Перенос Groove Music в Spotify — пошагово
Музыка

Перенос Groove Music в Spotify — пошагово

Ускорение Unity Dash в Ubuntu
Ubuntu

Ускорение Unity Dash в Ubuntu