Разрешить "localhost" запускаться в iisexpress, когда web.config содержит разрешения ipSecurity

Я просто добавил это в свой web.config:

<security>
  <ipSecurity allowUnlisted="false">
    <!-- The following IP addresses are granted access, all else denied -->
    <add allowed="true" ipAddress="123.123.105.0" subnetMask="255.255.255.0" />
    <add allowed="true" ipAddress="123.123.100.0" subnetMask="255.255.255.0" />
  </ipSecurity>
</security>

Работает точно так, как предполагалось, только над определенным диапазоном IP. НО, теперь, когда я иду тестировать это в Visual Studio через iisExpress по локальному хосту, это, конечно, дает мне проблемы. Вот полученная ошибка 500.19:

This configuration section cannot be used at this path. This happens when the section is locked at a parent level. Locking is either by default (overrideModeDefault="Deny"), or set explicitly by a location tag with overrideMode="Deny" or the legacy allowOverride="false".

У меня есть настройка IPSecurity на моем localmachine на панели служб, поэтому она включена, и я включил опции в блоке ipSecurity, такие как добавление "localhost" в качестве значения domainName, но, к сожалению, не повезло..... помогите мне StackOverflow, ты моя единственная надежда!;)

Ответ 1

Я просто столкнулся с той же ситуацией. Я погуглил и обнаружил, что все, что вам нужно сделать, это отредактировать файл applicationhost.config для IIS Express, найденный здесь:

% USERPROFILE%\Documents\IISExpress\Config\ApplicationHost.config

Откройте его и найдите раздел ipSecurity, который находится внутри раздела system.webServer, и измените overrideModeDefault с "Запретить" на "Разрешить". Вам не нужно добавлять IIS IP Security из компонентов Windows.

<sectionGroup name="system.webServer">
  ...
  <section name="ipSecurity" overrideModeDefault="Allow" />
  ...
</sectionGroup>

Надеюсь это поможет!

ПРИМЕЧАНИЕ. Для Windows 10 и Visual Studio 2015 (или более поздней версии) обратите внимание, что файл ApplicationHost.config был перемещен в папку .vs\config в иерархии папок вашего проекта.

Ответ 2

Добавьте 127.0.0.1 к вашим разрешенным ips следующим образом:

<add allowed="true" ipAddress="127.0.0.1" />

Благодаря @AbeyMarquez я подумал, что ваш комментарий заслуживает большего внимания, поскольку он решил мою проблему. Спасибо!