Объявление 404 не входит в тег customErrors, вот что вам нужно:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpErrors errorMode="DetailedLocalOnly">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath="" path="/404.html" responseMode="ExecuteURL" />
</httpErrors>
</system.webServer>
</configuration>
Попробуйте установить web.config
именно на это и посмотрите, работает ли он, тег customErrors больше подходит для страниц .NET, чем классический ASP, даже классический 500:100
объявляется в разделе httpErrors
, а не в CustomErrors
.
Это взято из известного рабочего web.config
с удалением ненужных битов. Вы можете отправить его на страницу ASP, используя ExecuteURL
, что означает, что вы можете обрабатывать 404 с умом, например, перенаправить или предложить страницу результатов поиска.