powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / error404
21 сообщений из 21, страница 1 из 1
error404
    #38850685
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, как правильно обрабатывать 404-ю ошибку.

Сейчас сделано следующее:

<customErrors mode="RemoteOnly" defaultRedirect="~/error.aspx" >
<error statusCode="403" redirect="~/error.aspx" />
<error statusCode="404" redirect="~/error404.aspx" />
<error statusCode="500" redirect="~/error.aspx" />
</customErrors>

Если в error404.aspx.cs добавить
...
Рейтинг: 0 / 0
error404
    #38850688
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, как правильно обрабатывать 404-ю ошибку.

Сейчас сделано следующее:

<customErrors mode="RemoteOnly" defaultRedirect="~/error.aspx" >
<error statusCode="403" redirect="~/error.aspx" />
<error statusCode="404" redirect="~/error404.aspx" />
<error statusCode="500" redirect="~/error.aspx" />
</customErrors>

Если в error404.aspx.cs добавить

Response.StatusCode = 404;
Response.StatusDescription = "File not found";

то локально страница открывается и статус 404, но реальный сайт вместо этой страницы отдаёт свою дефолтную 404.

Если в error404.aspx.cs заокоментить эти строки

Response.StatusCode = 404;
Response.StatusDescription = "File not found";

то реальный сайт в случае ошибки 404 показывает error404.aspx верно, но со статусом 200.

Как сделать так, чтобы сайт правильно отдавал error404.aspx со статусом 404.
Изменение customErrors mode на On или Off никак не меняет ситуацию
...
Рейтинг: 0 / 0
error404
    #38850694
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igan,

Mode здесь не при чем. Конечно статус будет 200 - это же редирект обработчика ошибок на Вашу Error404.aspx. Так что все верно. зачем Вам еще один HTTP Response со статусом 404? Какова цель?
...
Рейтинг: 0 / 0
error404
    #38850699
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для seo.

Можно конешно error404.aspx запретить индексировать в robots.txt
но хочется научиться отдавать свой контент со статусом 404.
...
Рейтинг: 0 / 0
error404
    #38850704
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igan,

Если Вы это и сделаете, то получите бесконечную рекурсию на Error404.aspx с постоянной перегрузкой этой страницы пока не убьете ее.
...
Рейтинг: 0 / 0
error404
    #38850708
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не изобретайте велосипед, CustomErrors был создан чтобы автоматизировать процесс редиректа пользователя на юзер-фриендли страницу по статусу HTTP response.
...
Рейтинг: 0 / 0
error404
    #38850709
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В этом и есть вопрос - как запретить серверу для конкретной страницы реагировать на отдаваемый ей статус.

У яндекса ( например http://ya.ry/usdsdjhdsdf/) отадётся свой контент со статусом 404. Я также кочу.
...
Рейтинг: 0 / 0
error404
    #38850712
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Axeleron,

Я не изобретаю велосипед, проблема не высосана из пальца. link
...
Рейтинг: 0 / 0
error404
    #38850713
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igan,

Возьмите Fiddler или WinShark и посмотрите какой статут Yandex возвращает на ошибке 404.
...
Рейтинг: 0 / 0
error404
    #38850714
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
error404
    #38850716
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я сначала посмотрел как сделано у яндекса - там отдаётся frendly контент со статусом 404.
Я теперь хочу сделать у себя также. Локально работает.
...
Рейтинг: 0 / 0
error404
    #38850736
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Или можно поставить вопрос иначе:
Как поменять содержимое дефолтной404, которую отдаёт iis
http://s010.radikal.ru/i314/1501/63/af3e59ad53c3.png
...
Рейтинг: 0 / 0
error404
    #38850749
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igan,

Так просто 'нарисовать' в Error404.aspx что-то похожее - оформить и по-дружески пользователю сообщить: "Ошибка 404, Страница не найдена". И дать линк обратно на главную.
...
Рейтинг: 0 / 0
error404
    #38850759
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Axeleron,

статус будет 200. А нужно вывести этоже со статусом 404.
...
Рейтинг: 0 / 0
error404
    #38850772
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igan,

Ну сделайте так в Error404.aspx.cs
Код: c#
1.
2.
3.
4.
5.
protected override void Render(HtmlTextWriter writer)
{
    base.Render(writer);
    Response.StatusCode = 404;
}
...
Рейтинг: 0 / 0
error404
    #38851000
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Axeleron,

после добавления вашего кода, ситуация не изменилась.
Ведёт себя также, как и с этим кодом

Response.StatusCode = 404;
Response.StatusDescription = "File not found";
...
Рейтинг: 0 / 0
error404
    #38851001
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сейчас задачу решил так:
...
Рейтинг: 0 / 0
error404
    #38851003
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сейчас задачу решил так:

тут
%SystemDrive%\inetpub\custerr\<LANGUAGE-TAG>\404.htm
разместил свой html
...
Рейтинг: 0 / 0
error404
    #38851061
Calabonga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не совсем понятно, о каком типе проекта идет речь, но в MVC можно так
...
Рейтинг: 0 / 0
error404
    #38851066
igan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Calabonga,

asp.net
...
Рейтинг: 0 / 0
error404
    #38851135
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Calabongaне совсем понятно, о каком типе проекта идет речь, но в MVC можно так в первом же сообщении aspx фигурирует
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / error404
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]