Форум программистов, компьютерный форум, киберфорум
PHP: ООП
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 29.11.2014
Сообщений: 64

Обработка ошибок 404 и 403

05.07.2015, 22:55. Показов 2714. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Делаю движок для сайта, хочу в нем реализовать обработку 404 и 403 ошибок.
Когда пользователь ошибается (возникает 404 ошибка) или попадает на страницу, к которой у него нету доступа (403, access deneid), в браузерной строке остается ссылка, по которой он перешёл. Я пробую переадресовать пользователя на страницу 404 или 403, но возникает циклическая пере-адресация.
Вот код Error-контроллера:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php 
   class ErrorController { 
    
      public function notFound() { 
         header('Location: '.Config::NOTFOUND); 
         echo 'страница не найдена'; 
      } 
       
      public function accessDeneid() { 
         header('Location: '.Config::ACCESSDENEID); 
         echo 'нету доступа'; 
      } 
    
   } 
?>
Запрос выглядит следующим образом для 404
http://mysite.com/section/not-correct-link.html
/not-correct-link - несуществующая ссылка

или так, для 403:
http://mysite.com/foloder-name... -link.html
/foloder-name-in-url/ - директория в URL-адресе

Собственно, вопрос: как правильно перенаправить пользователя на нужную страницу без циклической переадресации??
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.07.2015, 22:55
Ответы с готовыми решениями:

Чтобы не делал всегда попадаю на 403 или 404
всегда поподаю на 404 или 403 которые сам же создал )прикладываю скрины ,сам делаю сайт на уже своем написанном движке первый раз...

Ошибки 404 или 403 при Get & Post запросе
Всем привет. Имеется ссылка ...

Ошибка (иногда) Unautorized /Бывает и Forbidden 403 (или 404 - не помню)
Есть код : Dim web As New System.Net.WebClient Dim www As String = web.DownloadString(&quot;http://site.com/example.php&quot;) ...

10
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
06.07.2015, 00:12
Цитата Сообщение от Derrt Посмотреть сообщение
Собственно, вопрос: как правильно перенаправить пользователя на нужную страницу без циклической переадресации??
Перенаправлять пользователя на страницу, которая существует и к которой у него есть доступ?
0
14 / 14 / 13
Регистрация: 03.07.2015
Сообщений: 130
06.07.2015, 09:28
А ты не переадресовывай, ты прям этими методами выводи ошибку. Для чего переадресовывать-то?
0
0 / 0 / 0
Регистрация: 29.11.2014
Сообщений: 64
06.07.2015, 22:56  [ТС]
Цитата Сообщение от pav1uxa Посмотреть сообщение
Сообщение от Derrt
Собственно, вопрос: как правильно перенаправить пользователя на нужную страницу без циклической переадресации??
Перенаправлять пользователя на страницу, которая существует и к которой у него есть доступ?
Перенаправлять на соответствующие:
404 -> /not-found.html
403 -> /access-deneid.html

Цитата Сообщение от cheshirskydimk Посмотреть сообщение
А ты не переадресовывай, ты прям этими методами выводи ошибку. Для чего переадресовывать-то?
Просто я хочу, чтоб в адресной строке был соответствующий адрес для ошибок.
0
0 / 0 / 0
Регистрация: 29.11.2014
Сообщений: 64
08.07.2015, 10:46  [ТС]
Просто, думаю, так красивше будет, если в адресной строке будет адрес страницы 404 или 403
0
53 / 53 / 22
Регистрация: 31.03.2015
Сообщений: 268
08.07.2015, 12:24
Цитата Сообщение от Derrt Посмотреть сообщение
Просто, думаю, так красивше будет, если в адресной строке будет адрес страницы 404 или 403
Советую не думать, а делать, как все нормальные люди делают. "Красивше" не будет, будет только лишняя нагрузка на сервер, хотя это мелочи.
0
0 / 0 / 0
Регистрация: 29.11.2014
Сообщений: 64
08.07.2015, 13:33  [ТС]
наверное, вы правы , но, все-таки, интересно, как сделать.
По-моему в Wordpress так реализовано
0
14 / 14 / 13
Регистрация: 03.07.2015
Сообщений: 130
08.07.2015, 13:37
но, все-таки, интересно, как сделать.
Что именно? Переадресацию?
Wordpress так реализовано
Не
0
18 / 18 / 12
Регистрация: 10.03.2015
Сообщений: 77
10.07.2015, 02:16
Может так
С 403 на главную лучше или на страницу авторизации а с 404
PHP
1
header('Location: /404.php')
и там нарисовать что-то красивое, ну или на главную
0
0 / 0 / 0
Регистрация: 29.11.2014
Сообщений: 64
11.07.2015, 01:36  [ТС]
/404.php - это отдельный файл? Я, в принципе, так и делаю. Только переадресовываю на /not-found.html (это не отдельный файл). Так как такого файла нет, то запрос переносится на index.php. А оттуда уже в роутер. И по кругу.
0
18 / 18 / 12
Регистрация: 10.03.2015
Сообщений: 77
11.07.2015, 01:41
Так пропишите в роутере правила для запроса not-found.html или файл создайтте not-found.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.07.2015, 01:41
Помогаю со студенческими работами здесь

Wordpress - если в “wp-content” нет такого файла, то отдать за место 404 код ответа 403. В htacess может как?
Доброго времени суток, уважаемые гуру. На сайте Wordpress имеется папка &quot;wp-content&quot;, там лежат плагины, переводы и т.д. Тут всё...

Обработка 404 роутер
Здравствуйте. Есть простенький роутер(со временем будет усложняться), нужно обработать 404 ошибку при ошибочном вызове контролера или...

Обработка запроса к странице 404 Not Found
Недавно начал изучать Node Js и решил сделать домашнюю библиотеку Сделал все страницы через view engine hbs Создал модель, контроллеры...

Обработка ошибок
Добрый день, многоуважаемые форумчане. Начал изучать Java и возник следующий вопрос - как обработать крайние положения(возможные ошибки) в...

Обработка ошибок
Есть главный класс и несколько дочерних, входящих как в состав главного, так и друг в друга (не важно) Нужно в другой класс передать члена...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru