Содержание
4.7.5 Файл 404.php
Введение
Файл контента Файл 404.php (или файл данных) — это именованный блок информации, хранящийся на сервере, который содержит текст, изображения, видео или аудио. Он представляет собой упорядоченный набор данных (байтов), которые могут быть текстовыми или бинарными.
Основные характеристики файла:
- Имя и расширение: Файл имеет имя и тип (формат), определяемый расширением, которое указывает на его содержимое.
- Параметры: Файлы характеризуются размером, датой создания и последней модификации.
- Применение: Данные файлы используются для вывода хранящегося контента, например, при добавлении документов или видео.
Файлы могут быть текстовыми (например, txt, html, php и т.д.) или содержать бинарные данные (видео, видео и прочее).
Файл Файл 404.php
В созданную корневую директорию /images загрузим файл изображения.
Создадим в блокноте и сохраним в директории /pages файл Файл 404.php записав в него код с загруженным файлом
- 404.php
<img src="images/404.png" alt="Описание картинки">
Файл index.php
В файле index.php меняем функцию
- include('pages/' . $page . '.php'); на require('pages/' . $page . '.php');
Если PHP выдает предупреждение, связанную с include, это означает, что скрипт не может найти или загрузить требуемый файл. В отличие от include, require вызывает фатальную ошибку.
- index.php
- <?php
- // Получаем значение из URL: index.php?page=home
- // Проверьте, находится ли запрошенная страница в списке разрешенных.
- // Безопасно подключить из директории pages/ внешний файл из массива
- // ('home', 'about', 'contact', 'like') с расширением .php
- require('pages/' . $page . '.php');
- } else {
- // Обработать некорректный запрос страницы (страница не найдена).
- echo 'Искомая страница не найдена.';
- }
- ?>
Сохраняем и проверяем ссылку http://localhost/index.php?page=404 в браузере
И вот уже мы не получили Предупреждения, вместо этого PHP выдало ошибку и остановило выполнение скрипта, перейдя к строке 10, так как файла 404.php нет в списке исключений.
- index.php
- <?php
- // Получаем значение из URL: index.php?page=home
- // Проверьте, находится ли запрошенная страница в списке разрешенных.
- // Безопасно подключить из директории pages/ внешний файл из массива
- // ('home', 'about', 'contact', 'like') с расширением .php
- require('pages/' . $page . '.php');
- } else {
- // Обработать некорректный запрос страницы (страница не найдена).
- echo 'Искомая страница не найдена.';
- }
- ?>
Добавим в массив исключений нашу страницу 404.php
- index.php
- <?php
- include 'pages/footer.php';
- $page = $_GET['page'] ?? 'home'; // По умолчанию 'home'
- ?>
И на конец наводим красоту, заменив в строке 10 функцию при исключении вывода текста на функцию вывода страницы с ошибкой.
- echo 'Искомая страница не найдена.'; на include 'pages/404.php';
- index.php
- <?php
- // Получаем значение из URL: index.php?page=home
- // Проверьте, находится ли запрошенная страница в списке разрешенных.
- // Безопасно подключить из директории pages/ внешний файл из массива
- // ('home', 'about', 'contact', 'like') с расширением .php
- require('pages/' . $page . '.php');
- } else {
- // Обработать некорректный запрос страницы (страница не найдена).
- include 'pages/404.php';
- }
- ?>
Сохраняем изменения и проверяем ссылку http://localhost/index.php?page=test в браузере
С этого момента, все ссылки, через файл index.php кроме указанных в массиве исключения, будут перенаправлятся на index.php, либо на страницу «ошибки енота». Проверим это и перейдем к следующей главе.
Дополнения и Файлы
см. также:




