Я делаю страницу 404 с кнопкой для отчета пользователя о том, что на сайте возникли проблемы. Идея заключается в том, когда пользователь нажимает кнопку, я получаю электронное письмо с информацией о последней странице, доступной ...Сообщить об ошибке 404 по электронной почте с последним адресом доступа
Проблема в том, что я использую переменную php '$ _SERVER [' HTTP_REFERER ']', и это когда-либо вернуть нулевое значение. Я нашел этот вопрос (In what cases will HTTP_REFERER be empty), и я пришел к выводу, что эта переменная не является решением.
Это мой .htacess
RewriteEngine on
ErrorDocument 404 http://example.com/erro.php
#ErrorDocument 404 /erro.php #this doesnt work... redirect doesnt work
На странице erro.php У меня есть код с функцией электронной почтой, которые работают без проблем, но мне нужно каким-то образом взять последнюю страницу доступа, которые генерируют ошибку.
На странице erro.php Я пытаюсь использовать:
echo $_SERVER['HTTP_REFERER']; // return null value
echo $_SERVER['REQUEST_URI']; // return page http://example.com/erro.php
Я пытаюсь использовать вариант с JQuery (https://stackoverflow.com/a/2415645/2761794):
На странице erro.php
$(document).ready(function() {
var referrer = document.referrer;
alert(referrer); // return null value
});
Некоторые предложения получить последний доступный URL-адрес на странице erro.php для отправки по электронной почте?
Действительно не имеет смысла, чтобы пользователи сообщали об ошибках. Они, скорее всего, нажмут на свою кнопку. Используйте свои журналы ошибок на сервере – charlietfl
Я не вижу журналы, где я работаю, мне приходится управлять многими сайтами и делать больше сайтов каждый день, поэтому не стоит смотреть журналы. – rafaelfndev
Настройте задания cron для чтения журналов, затем – charlietfl