2016-06-07 2 views
0

На моей странице ошибок 404 я хочу отобразить URL-адрес референта, а затем использовать его для запуска поиска, чтобы попытаться найти нужную страницу. не

В моем заголовочном файле шаблона Velocity, я использую

$response.sendRedirect("$link.requestBaseURL/404_page_not_found_7_293?t=$date.getSystemTime()") 

направить пользователя на страницу 404, когда они пытаются получить доступ к странице в старом стиле (эти старые страницы больше не предназначены для но некоторые из них могут быть проиндексированы Google).

На 404 самой странице, я использую

#set($referrer = $request.getHeader('referer')) 

получить реферер, но вместо отображения URL страницы, который ссылается пользователя на страницу 404, он отображает URL из страницы, к которой они обращались до этого! Например, если вы перейдете на домашнюю страницу сайта, нажмите на нерабочую ссылку, которая переместится на страницу 404 - референт указывается как домашняя страница, а не неработающая ссылка.

Как я могу получить правильный референт?

ответ

0

Направления не меняют заголовок Referer. Даже если это не ясно в HTTP 1.1 RFC, это политика большинства браузеров.

Ваш лучший вариант - передать ошибочный URL-адрес в качестве параметра запроса из самой сломанной страницы.

Смежные вопросы