Страница настраиваемой ошибки HttpErrors

Я пытаюсь использовать пользовательские страницы ошибок приложения asp.net webforms, поэтому делаю что-то вроде этого (например, ошибка 404):

 <httpErrors errorMode="Custom" existingResponse="Replace" defaultResponseMode="ExecuteURL">
     <clear />      
         <error statusCode="404" path="/Pages/Errors/Error404.aspx" responseMode="ExecuteURL" />
   </httpErrors>    

теперь для проблемы, похоже, он работает наполовину, что означает, что при возникновении ошибки не найденной страницы он пытается перенаправить на мою страницу Error404.aspx, но приводит к другой ошибке 404, потому что он не может найти мою настраиваемую страницу. Это ЗАВОД !!

Server Error in '/' Application.
The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly.

Requested URL: /Pages/Errors/Error404.aspx

Я проверил и перепроверил свой путь, папки Pages и Errors существуют, Error404.aspx существует, если я напишу путь в браузере, я могу получить доступ к странице, так что действительно существует, так в чем проблема?


person adi1989    schedule 23.08.2013    source источник


Ответы (1)


Попробуйте добавить ~ в путь:

<error statusCode="404" path="~/Pages/Errors/Error404.aspx" responseMode="ExecuteURL" />

другое решение использует перенаправление:

<error statusCode="404" redirect="~/Pages/Errors/Error404.aspx" />
person Gianpiero    schedule 23.08.2013