Я пытаюсь настроить страницу ошибки 404 для моего веб-приложения. Проблема в том, что это приложение будет развернуто в нескольких разных средах. Иногда это будет в виртуальном каталоге, а иногда и не будет.
У меня есть страница с ошибкой в каталоге с именем ErrorPages и настроил мой config следующим образом:
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404"/>
<error statusCode="404" path="/VirtualDir/ErrorPages/404.aspx" responseMode="ExecuteURL" />
</httpErrors>
</system.webServer>
Проблема заключается в том, что я развертываю это в корневом каталоге веб-сайта, часть /VirtualDir
должна быть удалена. Если я удалю его перед развертыванием, мне нужно добавить его обратно при развертывании в виртуальный каталог. Есть ли способ установить путь относительно виртуального каталога, а не на сайт?
Я попытался использовать ~
, но это тоже не работает:
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404"/>
<error statusCode="404" path="~/ErrorPages/404.aspx" responseMode="ExecuteURL" />
</httpErrors>
</system.webServer>