2016-11-21 3 views
0

Мой 404.html содержит:страница ошибки в ASP MVC

<img class="img-responsive center-block" src="Images/error404.png"/> 

Мой Web.config в папке проекта содержит:

<httpErrors errorMode="Custom" existingResponse="Replace"> 
    <remove statusCode="404"/> 
    <error statusCode="404" path="404.html" responseMode="File"/> 
</httpErrors> 

я могу получить доступ изображения через http://localhost:53870/Images/error404.png в браузере.

Изображение в 404.html загружается, когда я называю его непосредственно

localhost:53870/404.html 

Или, когда я называю

http://localhost:53870/NonexistentController 

изображение в 404.html не загружается, когда я называю что-то вроде этого

http://localhost:53870/Home/NonexistentAction 

enter image description here

+2

добавить косую черту в передней части 'src':.' ' Liam

+0

@ Лиам СПАСИБО !!) – dizar47

ответ

2

Вам не хватает обратной косой черты в начале пути изображения.

Изменение:

<img class="img-responsive center-block" src="Images/error404.png"/> 

To:

<img class="img-responsive center-block" src="/Images/error404.png"/> 
1

В бритвенных файлов, вы можете воспользоваться оператором ~. ~ вернет виртуальный корневой путь.

<img class="img-responsive center-block" src="~/Images/error404.png"/>

С этим, Ваше изображение значение ЦСИ будет правильно независимо от того, какая дополнительная папка/путь вы находитесь в

+0

Я никогда не понимал этого. Flat out HTML делает то же самое с начальным '/'. Почему Microsoft тоже добавила это, я никогда не узнаю – Liam

Смежные вопросы