В IIS10 (Windows 10 и Server 2016), начиная с версии 1709, существует новая, более простая опция для включения HSTS для веб-сайта.
Microsoft описывает преимущества нового подхода здесь и предоставляет много разных примеров того, как реализовать изменение программно или путем непосредственного редактирования файла ApplicationHost.config (который похож на web.config, но работает в уровень IIS, а не индивидуальный уровень сайта). ApplicationHost.config находится в C: \ Windows \ System32 \ inetsrv \ config.
Я обрисовал в общих чертах два примера методов, чтобы избежать гниения ссылок.
Метод 1 - редактирование файла ApplicationHost.config напрямую
Между тегами <site>
добавьте эту строку:
<hsts enabled="true" max-age="31536000" includeSubDomains="true" redirectHttpToHttps="true" />
Метод 2 - Командная строка:
Выполните следующее из командной строки с повышенными правами (т.е. щелкните правой кнопкой мыши на CMD и запустите от имени администратора). Не забудьте поменять Contoso на имя вашего сайта, как оно отображается в IIS Manager.
c:
cd C:\WINDOWS\system32\inetsrv\
appcmd.exe set config -section:system.applicationHost/sites "/[name='Contoso'].hsts.enabled:True" /commit:apphost
appcmd.exe set config -section:system.applicationHost/sites "/[name='Contoso'].hsts.max-age:31536000" /commit:apphost
appcmd.exe set config -section:system.applicationHost/sites "/[name='Contoso'].hsts.includeSubDomains:True" /commit:apphost
appcmd.exe set config -section:system.applicationHost/sites "/[name='Contoso'].hsts.redirectHttpToHttps:True" /commit:apphost
Другие методы, которые Microsoft предлагает в этих статьях, могут оказаться более подходящими, если вы находитесь в размещенной среде, где у вас ограниченный доступ.
Имейте в виду, что версия IIS10 1709 теперь доступна для Windows 10, но для Windows Server 2016 она находится на другой дорожке выпуска и не будет выпущена как исправление или пакет обновления. См. здесь для получения подробной информации о 1709.