IIS на Windows VPS: установка роли, привязки сайта, HTTPS и первичная диагностика
Internet Information Services, или IIS, — штатный веб-сервер Windows Server. Его используют для размещения сайтов и API на ASP.NET, публикации корпоративных веб-приложений, работы служб на базе .NET Framework и организации веб-доступа к информационным системам.
Установка роли занимает несколько минут, но после нее сайт не становится доступным автоматически. Администратору необходимо создать каталог, назначить права, настроить привязку домена, открыть сетевые порты, добавить SSL-сертификат и проверить, какой пул приложений обслуживает сайт.
Большинство проблем IIS связано не с самой ролью веб-сервера, а со связкой нескольких компонентов. Домен может указывать не на тот IP-адрес, firewall может блокировать порт, сертификат — не соответствовать имени сайта, а учетная запись пула приложений — не иметь доступа к каталогу.
Поэтому настройку лучше выполнять последовательно: сначала установить минимально необходимый набор компонентов, проверить сайт по HTTP, затем настроить домен и только после этого включать HTTPS. Такой порядок позволяет быстрее определить, на каком уровне возникла ошибка.
Как устроен сайт на IIS
IIS принимает HTTP- и HTTPS-запросы, определяет сайт по IP-адресу, порту и имени узла, после чего передает запрос приложению или возвращает статический файл.
Упрощенная схема выглядит так:
Пользователь
│
▼
Доменное имя сайта
│
▼
DNS
│
▼
Публичный IP Windows VPS
│
┌─────────┴─────────┐
▼ ▼
TCP 80 TCP 443
HTTP HTTPS
│ │
└─────────┬─────────┘
▼
Привязка IIS
│
▼
Веб-сайт IIS
│
┌─────────┴─────────┐
▼ ▼
Статические файлы Пул приложений
│
▼
ASP.NET / API
Основные компоненты IIS
| Компонент | Назначение | Типичная ошибка |
|---|---|---|
| Веб-сайт | Объединяет каталог, привязки и параметры приложения | Запрос попадает в другой сайт |
| Физический путь | Указывает каталог с файлами сайта | IIS не имеет прав на чтение |
| Привязка | Определяет протокол, IP, порт и имя узла | Конфликт с другим сайтом |
| Пул приложений | Изолирует и запускает веб-приложение | Пул остановлен или аварийно завершается |
| Сертификат | Подтверждает домен и защищает HTTPS-соединение | Сертификат выдан на другое имя |
| Модули и обработчики | Определяют обработку ASP.NET, файлов и других запросов | Не установлен необходимый компонент роли |
| Журналы IIS | Фиксируют запросы и HTTP-статусы | Диагностика ведется без анализа substatus |
Что такое привязка сайта
Привязка, или binding, включает несколько параметров:
- протокол — HTTP или HTTPS;
- IP-адрес;
- TCP-порт;
- имя узла;
- SSL-сертификат для HTTPS;
- использование SNI, если на одном IP размещены несколько HTTPS-сайтов.
Например, сайт может иметь две привязки:
http | * | 80 | example.ru
https | * | 443 | example.ru | SNI | SSL-сертификат example.ru
Имя узла позволяет IIS отличать несколько сайтов, использующих один IP-адрес и один порт. Для нескольких HTTPS-сайтов на одном IP обычно применяется SNI — имя домена передается во время TLS-согласования и позволяет выбрать подходящий сертификат. :contentReference[oaicite:1]{index=1}
Подготовка Windows VPS к установке IIS
До установки роли нужно проверить операционную систему, DNS, сетевые правила и состав будущего приложения. Набор компонентов для статического сайта и ASP.NET-приложения отличается.
Что должно быть известно заранее
- версия Windows Server;
- публичный IP-адрес VPS;
- доменное имя сайта;
- каталог размещения файлов;
- тип приложения;
- используемая версия .NET;
- необходимость Windows Authentication;
- наличие базы данных;
- порты, которые должны быть доступны извне;
- способ получения и продления SSL-сертификата.
Не следует устанавливать все компоненты IIS «на всякий случай». Чем больше модулей включено, тем сложнее сопровождение и больше поверхность атаки.
Проверка IP-адреса и DNS
До создания сайта доменная A-запись должна указывать на публичный IPv4-адрес VPS. Для IPv6 используется AAAA-запись.
Проверка в PowerShell:
Resolve-DnsName example.ruМожно также проверить внешний адрес сервера:
Get-NetIPAddress -AddressFamily IPv4 |
Where-Object {
$_.IPAddress -notlike "169.254.*" -and
$_.IPAddress -ne "127.0.0.1"
}
На VPS за NAT локальный адрес сетевого интерфейса может отличаться от публичного IP. В таком случае значение нужно сверять с панелью провайдера.
Проверка занятых портов
До установки полезно убедиться, что порты 80 и 443 не используются другим веб-сервером или приложением:
Get-NetTCPConnection -State Listen |
Where-Object {
$_.LocalPort -in 80,443
} |
Select-Object LocalAddress, LocalPort, OwningProcess
Определить процесс по идентификатору:
Get-Process -Id 1234После запуска IIS порт может обслуживаться системным процессом через HTTP.sys. Само наличие процесса с именем System в этом случае не означает ошибку.
Как установить роль IIS
Роль можно добавить через «Диспетчер серверов» или PowerShell. Для повторяемой настройки и фиксации состава компонентов удобнее использовать PowerShell.
Установка базового веб-сервера
Проверить состояние роли:
Get-WindowsFeature Web-ServerУстановить IIS вместе с консолью управления:
Install-WindowsFeature Web-Server -IncludeManagementToolsПосле установки проверить службу:
Get-Service W3SVCИ состояние роли:
Get-WindowsFeature Web-ServerЕсли открыть в браузере адрес сервера по HTTP, должна появиться стандартная страница IIS. Однако оставлять ее в рабочей среде необязательно: после проверки лучше создать отдельный сайт и остановить неиспользуемый Default Web Site.
Компоненты для статического сайта
Для выдачи HTML, CSS, JavaScript и изображений достаточно минимального набора:
- Web Server;
- Common HTTP Features;
- Static Content;
- Default Document;
- HTTP Errors;
- Request Filtering;
- HTTP Logging;
- IIS Management Console.
Проверить установленные компоненты:
Get-WindowsFeature Web-* |
Where-Object Installed |
Select-Object Name, DisplayName
Компоненты для ASP.NET
Состав зависит от того, используется классический ASP.NET на .NET Framework или ASP.NET Core.
Для приложений на .NET Framework могут потребоваться:
- ASP.NET 4.x;
- .NET Extensibility;
- ISAPI Extensions;
- ISAPI Filters;
- WebSocket Protocol — только если его использует приложение;
- Windows Authentication — только при соответствующем сценарии.
Пример установки компонентов ASP.NET 4.x:
Install-WindowsFeature `
Web-Server, `
Web-Asp-Net45, `
Web-Net-Ext45, `
Web-ISAPI-Ext, `
Web-ISAPI-Filter, `
Web-Http-Logging, `
Web-Mgmt-ConsoleДля ASP.NET Core одной роли IIS недостаточно. На сервер устанавливается подходящий Hosting Bundle, который добавляет модуль ASP.NET Core Module. Версию Hosting Bundle нужно выбирать по документации и версии конкретного приложения.
Проверка конфигурации IIS
Конфигурация IIS хранится в системных файлах, включая applicationHost.config. До значительных изменений желательно создать резервную копию средствами AppCmd:
%windir%\system32\inetsrv\appcmd add backup BeforeSiteSetupПосмотреть список резервных копий:
%windir%\system32\inetsrv\appcmd list backupТакая копия сохраняет конфигурацию IIS, но не файлы сайта, сертификаты, базы данных и остальные компоненты сервера.
Как создать сайт и настроить привязку
Для рабочего проекта лучше создать отдельный каталог и отдельный сайт, а не размещать приложение непосредственно в стандартном каталоге Default Web Site.
Создание каталога
Пример:
New-Item -ItemType Directory -Path "D:\Sites\example.ru" -ForceСоздадим тестовую страницу:
@'
<!doctype html>
<html lang="ru">
<head>
<meta charset="utf-8">
<title>IIS работает</title>
</head>
<body>
<h1>Сайт работает через IIS</h1>
</body>
</html>
'@ | Set-Content "D:\Sites\example.ru\index.html" -Encoding UTF8Права на каталог
Для статического сайта обычно требуется право чтения учетной записи, под которой IIS получает доступ к файлам. Не следует выдавать группе Everyone полный доступ.
Пример предоставления чтения группе IIS:
icacls "D:\Sites\example.ru" /grant "IIS_IUSRS:(OI)(CI)RX" /TДля приложения, которому требуется запись в конкретный каталог, лучше предоставить изменение только на эту папку, а не на весь сайт.
Например:
New-Item -ItemType Directory -Path "D:\Sites\example.ru\App_Data" -Force
icacls "D:\Sites\example.ru\App_Data" `
/grant "IIS AppPool\ExamplePool:(OI)(CI)M" /T
Имя виртуальной учетной записи должно соответствовать фактическому имени пула приложений.
Создание пула приложений
Загрузить модуль IIS:
Import-Module WebAdministrationСоздать пул:
New-WebAppPool -Name "ExamplePool"Для статического сайта или приложения, самостоятельно запускающего .NET, можно использовать режим без управляемого CLR:
Set-ItemProperty `
"IIS:\AppPools\ExamplePool" `
-Name managedRuntimeVersion `
-Value ""
Для классического ASP.NET на .NET Framework значение зависит от требований приложения. Менять его без документации разработчика не следует.
Создание сайта
Пример создания HTTP-сайта:
New-Website `
-Name "example.ru" `
-PhysicalPath "D:\Sites\example.ru" `
-Port 80 `
-HostHeader "example.ru" `
-ApplicationPool "ExamplePool"
Добавить вариант с www:
New-WebBinding `
-Name "example.ru" `
-Protocol http `
-Port 80 `
-HostHeader "www.example.ru"
Проверить сайты:
Get-Website |
Select-Object Name, State, PhysicalPath, Bindings
Проверка сайта до изменения DNS
Если DNS еще не обновился, запрос можно отправить на IP, явно указав заголовок Host:
Invoke-WebRequest `
-Uri "http://203.0.113.10/" `
-Headers @{
Host = "example.ru"
} `
-UseBasicParsing
Также можно временно добавить домен в файл hosts на тестовом компьютере. После завершения проверки временную запись нужно удалить.
Как настроить HTTPS и SSL-сертификат
Для рабочего сайта HTTPS должен использовать сертификат, выданный доверенным центром сертификации на фактическое доменное имя. Самоподписанный сертификат подходит для отдельных тестовых сценариев, но браузеры пользователей не будут доверять ему автоматически.
Что проверить перед выпуском сертификата
- домен зарегистрирован и управляется организацией;
- DNS указывает на нужный сервер либо доступен другой способ подтверждения домена;
- в сертификат включены все необходимые имена;
- определено, нужен ли вариант с
www; - для нескольких поддоменов выбран SAN- или wildcard-сертификат, если это оправдано;
- известен порядок продления;
- назначен ответственный за повторное подтверждение домена;
- доступ к закрытому ключу ограничен.
SSL-сертификаты и помощь с выпуском можно заказать на профильной странице IPWAY. Актуальные сроки действия, тарифы и порядок повторной проверки домена следует брать с действующей страницы услуги, а не фиксировать в технической инструкции.
Импорт сертификата
Для IIS сертификат обычно импортируется вместе с закрытым ключом в хранилище локального компьютера. Часто используется файл PFX.
Через PowerShell:
$password = Read-Host "Пароль PFX" -AsSecureString
Import-PfxCertificate `
-FilePath "C:\Temp\example.ru.pfx" `
-CertStoreLocation "Cert:\LocalMachine\My" `
-Password $password
После импорта проверить сертификат:
Get-ChildItem Cert:\LocalMachine\My |
Where-Object {
$_.Subject -match "example.ru"
} |
Select-Object Subject, Thumbprint, NotBefore, NotAfter, HasPrivateKey
Для серверного сертификата значение HasPrivateKey должно быть True. Сертификат без закрытого ключа нельзя использовать для обычной HTTPS-привязки сайта.
Создание HTTPS-привязки
В графическом интерфейсе:
Диспетчер IIS
└─ Сайты
└─ example.ru
└─ Привязки
└─ Добавить
├─ Тип: https
├─ Порт: 443
├─ Имя узла: example.ru
├─ Требовать SNI: да
└─ SSL-сертификат: example.ru
При добавлении HTTPS-привязки IIS позволяет выбрать сертификат из хранилища сервера. Такой порядок также описан в документации Microsoft по настройке SSL в IIS. :contentReference[oaicite:2]{index=2}
Проверить привязки:
Get-WebBinding -Name "example.ru" |
Select-Object protocol, bindingInformation, sslFlags
Для нескольких HTTPS-сайтов на одном IP необходимо проверить имя узла и SNI. Если создать несколько безымянных привязок *:443:, они будут конфликтовать.
Проверка сертификата через браузер и PowerShell
Проверить ответ сайта:
Invoke-WebRequest `
-Uri "https://example.ru/" `
-UseBasicParsing
Проверить доступность порта:
Test-NetConnection example.ru -Port 443После настройки нужно проверить:
- имя сертификата;
- срок действия;
- наличие промежуточных сертификатов;
- правильный сертификат на внешнем адресе;
- работу варианта с
www; - редирект с HTTP на HTTPS;
- отсутствие mixed content;
- работу сайта в нескольких браузерах.
Перенаправление с HTTP на HTTPS
Редирект следует настраивать только после того, как HTTPS уже работает. Иначе сайт может попасть в недоступное состояние или цикл перенаправлений.
Способ зависит от приложения:
- URL Rewrite в IIS;
- настройки ASP.NET или ASP.NET Core;
- логика самого приложения;
- внешний reverse proxy или балансировщик.
При наличии reverse proxy нужно учитывать заголовки, передающие исходную схему запроса. Если приложение не распознает, что внешний клиент уже использовал HTTPS, может возникнуть бесконечный редирект.
Firewall, безопасность и эксплуатация IIS
Доступность сайта определяется не только привязками IIS. Порты должны быть разрешены в Windows Firewall и, при наличии, во внешних сетевых правилах провайдера.
Открытие HTTP и HTTPS
Проверить встроенные правила IIS:
Get-NetFirewallRule |
Where-Object {
$_.DisplayName -match "World Wide Web|WWW|HTTP"
} |
Select-Object DisplayName, Enabled, Direction, Action
При необходимости можно создать отдельные правила:
New-NetFirewallRule `
-DisplayName "IIS HTTP 80" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 80 `
-Action Allow
New-NetFirewallRule `
-DisplayName "IIS HTTPS 443" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 443 `
-Action Allow
В рабочей среде HTTP можно оставить только для редиректа и подтверждения домена, если выбранный механизм выпуска сертификата этого требует.
Не публиковать административные интерфейсы без необходимости
Во внешний доступ обычно должны быть открыты только порты сайта. Не следует без необходимости публиковать:
- RDP для всего интернета;
- SMB;
- Microsoft SQL Server;
- службы удаленного управления IIS;
- административные панели приложения;
- внутренние API;
- каталоги резервных копий.
Доступ администратора лучше ограничивать VPN, доверенными IP-адресами или другим защищенным способом.
Права пула приложений
Приложение не должно работать с административными правами без обоснованной необходимости. По умолчанию пул может использовать виртуальную учетную запись, изолированную от других приложений.
Рекомендуется:
- создавать отдельный пул для каждого независимого приложения;
- выдавать права только на нужные каталоги;
- не предоставлять запись на корень сайта без необходимости;
- не использовать учетную запись администратора;
- отдельно защищать конфигурационные файлы;
- не хранить пароли в открытом виде;
- контролировать права на сертификаты и закрытые ключи.
Журналы IIS
Стандартные журналы сайтов обычно находятся в каталоге:
C:\inetpub\logs\LogFiles\Посмотреть идентификатор сайта:
Get-Website |
Select-Object Name, Id, State, PhysicalPath
Каталог конкретного сайта будет иметь имя вида W3SVC1, где число соответствует идентификатору.
В журнале важно анализировать:
- дату и время;
- метод запроса;
- URI;
- порт;
- IP клиента;
- HTTP-статус;
- substatus;
- системный код ошибки;
- время обработки.
Microsoft предоставляет отдельную настройку журналирования IIS, включая выбор полей и формат хранения. :contentReference[oaicite:3]{index=3}
Резервное копирование
Для восстановления сайта недостаточно резервной копии каталога. Нужно сохранить:
- файлы сайта;
- конфигурацию IIS;
- базы данных;
- SSL-сертификаты вместе с закрытыми ключами;
- настройки DNS;
- учетные записи и права;
- конфигурации приложения;
- порядок восстановления.
Экспортировать сертификат с закрытым ключом можно только в защищенное место. Пароль PFX нельзя хранить рядом с самим архивом в открытом виде.
Диагностика типичных ошибок IIS
Диагностику следует начинать с точного HTTP-статуса и substatus. Сообщение «сайт не работает» не показывает, находится ли проблема в DNS, сети, привязке, правах или приложении.
| Симптом | Вероятная причина | Что проверить |
|---|---|---|
| Сайт не открывается, timeout | Нет сетевого доступа к порту | DNS, IP, Windows Firewall и внешние правила |
| Открывается другой сайт | Неверная или конфликтующая привязка | Host name, IP, порт и SNI |
| HTTP 403 | Доступ запрещен или отсутствует стартовый документ | Права, Default Document и Directory Browsing |
| HTTP 404 | Файл или маршрут не найден | Физический путь, URL, обработчик и публикацию приложения |
| HTTP 500 | Ошибка приложения или конфигурации | Event Viewer, Failed Request Tracing и журнал приложения |
| HTTP 500.19 | Некорректный web.config или отсутствует модуль | Код ошибки, секцию конфигурации и компоненты IIS |
| HTTP 502 | Ошибка шлюза или backend-приложения | ASP.NET Core, reverse proxy и внутренний порт |
| HTTP 503 | Пул приложений остановлен или недоступен | Состояние пула и причины аварийного отключения |
| Ошибка сертификата | Неверное имя, срок, цепочка или привязка | Сертификат, SNI и внешний TLS-ответ |
| Бесконечный редирект | Конфликт правил HTTP/HTTPS или reverse proxy | URL Rewrite и заголовки исходной схемы |
Сайт не открывается извне
Проверку нужно выполнять по уровням:
- Проверить DNS.
- Проверить доступность публичного IP.
- Проверить порт через
Test-NetConnection. - Проверить правила Windows Firewall.
- Проверить внешние сетевые правила.
- Проверить состояние сайта.
- Проверить привязку.
- Проверить локальный запрос на самом сервере.
Состояние сайтов:
Get-Website |
Select-Object Name, State, Bindings
Состояние службы:
Get-Service W3SVC, WASЛокальная проверка:
Invoke-WebRequest `
-Uri "http://127.0.0.1/" `
-Headers @{
Host = "example.ru"
} `
-UseBasicParsing
Если локальный запрос работает, а внешний нет, вероятнее всего проблема находится в DNS, NAT или firewall.
Открывается Default Web Site
Это означает, что IIS не нашел более точную привязку или запрос был отправлен без ожидаемого имени узла.
Нужно проверить:
- Host name нового сайта;
- привязку Default Web Site;
- отсутствие двух одинаковых привязок;
- правильность DNS;
- используемый URL;
- SNI для HTTPS.
Список всех привязок:
Get-WebBinding |
Select-Object protocol, bindingInformation, ItemXPath
Ошибка 403
403 означает, что IIS понял запрос, но не разрешил его выполнение. Частые причины:
- нет стартового документа;
- запрещен просмотр каталога;
- нет прав на чтение;
- настроены ограничения по IP;
- запрещен тип аутентификации;
- запрос блокирует Request Filtering.
Включать Directory Browsing только ради устранения 403 обычно не нужно. Для сайта должен быть настроен стартовый документ или корректный маршрут приложения.
Ошибка 500.19
Ошибка указывает на проблему чтения конфигурации. В сообщении обычно присутствует шестнадцатеричный код, который помогает определить причину.
Проверяются:
- синтаксис
web.config; - дублирующиеся секции;
- отсутствующий модуль;
- заблокированный раздел конфигурации;
- права на файл;
- несовместимые параметры приложения;
- следы конфигурации от другого сервера.
Не следует удалять web.config целиком без резервной копии. Вместе с ошибочной секцией можно удалить настройки безопасности, маршрутизации и приложения.
Ошибка 503
Сначала проверить пул:
Get-WebAppPoolState -Name "ExamplePool"Запустить:
Start-WebAppPool -Name "ExamplePool"Если пул снова останавливается, нужно проверить:
- журнал System;
- журнал Application;
- учетную запись пула;
- пароль сервисной учетной записи;
- rapid-fail protection;
- версию .NET;
- наличие Hosting Bundle;
- архитектуру приложения;
- права на каталог.
HTTPS отдает неправильный сертификат
Причина часто находится в привязке SNI или в том, что запрос проходит через другой узел.
Нужно проверить:
- какой IP возвращает DNS;
- есть ли CDN или reverse proxy;
- имя узла в HTTPS-привязке;
- включен ли SNI;
- какой сертификат выбран;
- не осталось ли старой привязки;
- не используется ли другой сервер с тем же доменом.
Microsoft рекомендует при диагностике SSL в IIS проверять сертификат, привязку, закрытый ключ и параметры HTTP.sys. :contentReference[oaicite:4]{index=4}
Как перенести сайт с Windows-хостинга на VPS
Переход с обычного Windows-хостинга на отдельный VPS отличается от простого копирования файлов. На новом сервере необходимо заново подготовить IIS, установить нужные версии .NET и ASP.NET, перенести базы данных, создать сайты и пулы приложений, импортировать сертификаты и проверить права доступа.
До переноса нужно собрать сведения о текущем окружении:
- доменные имена и DNS-записи;
- версии .NET Framework, .NET и ASP.NET Core;
- структуру сайтов и приложений в IIS или Plesk;
- версии Microsoft SQL Server, MySQL или MariaDB;
- строки подключения;
- задания планировщика;
- SSL-сертификаты и наличие закрытых ключей;
- нестандартные модули и компоненты;
- объем файлов и баз данных;
- требования к почте и формам обратной связи.
Без этой информации сайт может открыться после переноса, но отдельные функции перестанут работать. Например, приложение не подключится к базе, фоновое задание не запустится, а форма обратной связи не сможет отправлять сообщения.
Как выглядит безопасная миграция
Анализ действующего Windows-хостинга
│
▼
Подготовка Windows VPS и IIS
│
▼
Установка нужных версий .NET и СУБД
│
▼
Перенос файлов и баз данных
│
▼
Настройка сайтов, пулов и сертификатов
│
▼
Проверка через временный hosts
│
▼
Переключение DNS
│
▼
Контроль сайта после переноса
Бесплатный перенос на Windows VPS IPWAY
IPWAY специализируется не только на аренде Windows VPS, но и на переносе и запуске сайтов, использующих IIS, ASP.NET и Microsoft SQL Server. Это особенно важно для проектов, которые нельзя без доработки перенести на обычный Linux-хостинг.
Мы помогаем переносить сайты со сторонних Windows-хостингов на отдельные Windows VPS. Специалисты подготавливают серверное окружение, настраивают IIS и необходимые компоненты Microsoft, переносят файлы и базы данных и проверяют запуск проектов на новом сервере.
Для клиентов, которые переезжают с Windows-хостинга REG.RU на специальную конфигурацию Windows VPS под Plesk, действует отдельная акция с бесплатным переносом сайтов и предоставлением дополнительных скидок на первые месяцы аренды VPS. Условия зависят от выбранного тарифа, периода оплаты, количества проектов и особенностей действующего окружения.
Подробные условия опубликованы на странице переезда с Windows-хостинга REG.RU на Windows VPS. Для переноса с других площадок действует общая акция по бесплатному переносу сайтов на VPS.
Заключение
IIS на Windows VPS подходит для размещения сайтов, ASP.NET-приложений, API и корпоративных веб-сервисов. Базовая установка роли несложна, но рабочая публикация требует согласованной настройки DNS, привязок, каталогов, пулов приложений, firewall и сертификатов.
Безопасный порядок начинается с минимального набора компонентов. Затем создается отдельный сайт, проверяется HTTP-доступ с правильным именем узла, настраиваются права пула приложений и только после этого добавляется HTTPS.
При диагностике важно разделять уровни. Timeout обычно указывает на сеть или firewall, неправильный сайт — на привязку, 403 и 404 — на доступ или маршрутизацию, 500 — на конфигурацию приложения, а 503 — на пул приложений.
Что почитать дальше
Для настройки Windows VPS, HTTPS и веб-приложений будут полезны следующие материалы:
- Ошибки SSL-сертификата: диагностика и исправление — как проверить домен, срок, цепочку и старый сертификат.
- Бесплатный SSL-сертификат для сайта — когда подходит бесплатный вариант и что проверить после установки.
- Публикация базы 1С на веб-сервере — как IIS участвует в работе веб-клиента и HTTP-сервисов 1С.
- Что такое Windows VPS — какие задачи решает виртуальный сервер Windows и как выбрать ресурсы.
Когда стоит обратиться к специалистам
Статический сайт и одну HTTPS-привязку можно настроить самостоятельно, если известны домен, каталог и требования приложения. Для нескольких сайтов, ASP.NET, корпоративной аутентификации, публикации 1С или переноса действующего проекта нужна более тщательная проверка.
Для размещения сайта, ASP.NET-приложения или API можно использовать Windows VPS от IPWAY. Специалисты помогут подготовить IIS, установить необходимые компоненты Microsoft и перенести существующие сайты со стороннего Windows-хостинга. Для части сценариев доступен бесплатный перенос сайтов на Windows VPS. Условия и техническую возможность миграции нужно согласовать до заказа.
Для настройки HTTPS можно заказать SSL-сертификат с помощью при выпуске и установке.
Кратко
- IIS — штатный веб-сервер Windows Server для сайтов и веб-приложений.
- Состав компонентов роли нужно выбирать по требованиям конкретного приложения.
- Привязка определяет протокол, IP, порт и доменное имя сайта.
- Для нескольких HTTPS-сайтов на одном IP обычно используется SNI.
- Пулу приложений следует выдавать только необходимые права на каталоги.
- HTTPS настраивается после проверки сайта по HTTP.
- Диагностику нужно начинать с HTTP-статуса, substatus и журналов IIS.
- Резервная копия должна включать файлы, конфигурацию, базы и сертификаты.