Ошибка IIS 10.0 SSI: вызовы #EXEC отключены для этого виртуального пути

Мои навыки IIS оставляют желать лучшего, но меня попросили включить директиву SSI #exec для кого-то, и я столкнулся с проблемой: я могу заставить SSI #echo работать, и у меня есть это в обоих applicationHost.config и web.config в корневом каталоге:

<serverSideInclude ssiExecDisabled="false" />

Но с этим в моем файле index.shtml:

<!--#echo var="LOCAL_ADDR"--><br>
<!--#exec cmd="echo hello">-->

Я получаю вывод:

127.0.0.1
#EXEC calls have been disabled for this virtual path

Я не настраивал виртуальные пути явно, и мой файл index.shtml находится в корневом каталоге веб-сайта. Я искал это сообщение об ошибке с помощью четырех поисковых систем и нигде не нашел его упоминания.

Если кто-нибудь может сказать мне, как заставить работать команду #exec, я буду очень признателен!

Сервер — Microsoft-IIS/10.0 в Windows 10 Enterprise.

Спасибо большое, Андрей


person Andrew M. Andrews III    schedule 26.05.2020    source источник


Ответы (1)


попробуйте добавить значение реестра DWORD SSIEnableCmdDirective в ключ HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters и установите для него значение 1.

назначьте разрешение iis_iusrs и iusr для файла cmd.exe. или запустите пул приложений под настраиваемой учетной записью пользователя, которая имеет полное разрешение на доступ к файлу cmd.exe.

https://docs.microsoft.com/en-us/previous-versions/iis/6.0-sdk/ms525620(v%3Dvs.90)

person Jalpa Panchal    schedule 27.05.2020
comment
Спасибо за предложения! Я добавил значение реестра, и это не сработало. Я попытался изменить разрешения для файла cmd.exe, но после нажатия кнопки «Изменить» в диалоговом окне «Свойства cmd.exe» все параметры недоступны. Поэтому я создал новый AppPool с удостоверением пользователя в группе «Пользователи» (у которого есть доступ «Чтение и выполнение» и «Чтение»), но это тоже не сработало. Я попытался изменить .NET на No Managed Code, но все равно не повезло. Я буду признателен за любые другие предложения, которые вы или кто-либо еще можете предложить! - person Andrew M. Andrews III; 27.05.2020