Я использовал приведенный ниже код для создания пользовательского сообщения 404 (страница не найдена) с использованием файла .htaccess.
RewriteEngine On
ErrorDocument 404 https://%{HTTP_HOST}/404.php
Это работает хорошо, но я хочу знать, какой неправильный URL-адрес вызвал это перенаправление. Другими словами, мне нужно получить HTTP реферер пока пользователь в 404.php. Итак, я использовал $_SERVER['HTTP_REFERER']
в 404.php, но ничего не возвращает.
Где у меня были ошибки? И каковы ваши решения для решения этой проблемы?
Удалить http://
от 404 обработчик и так:
ErrorDocument 404 /404.php
URL, который вызывает 404, доступен для вас в 404.php
с помощью:
$_SERVER["REQUEST_URI"]
когда http://
Используемый в 404 сервер обработчика выполняет полное перенаправление, и вы теряете оригинал REQUEST_URI
,
Других решений пока нет …