Возможно ли в PHP знать, был ли пользователь 301 перенаправлен на мой сайт?
Итак, на myoldsite.com у меня есть 301 перенаправление в файле .htaccess на mynewsite.com .
Могу ли я поместить некоторый код PHP на mynewsite.com, чтобы узнать, когда пользователь перенаправлен 301? Мне просто нужно это, чтобы отобразить конкретное сообщение, если это так.
Большое спасибо за любые указатели здесь 🙂
Я считаю, что с 301-переадресацией поле HTTP_REFERER
будет содержать исходный референт:
Такое поведение имеет смысл для 301 переадресации.
Решение. Я думаю, вы должны добавить параметр строки запроса в свой ответ 301, например ref=oldsite
и проверить его значение на своем новом веб-сайте.
Если вас беспокоит наличие параметров строки запроса в ваших URL-адресах, вы можете сказать поисковым системам игнорировать определенные параметры строки запроса. Процедура зависит от поисковых систем. По-видимому, есть трюк, который работает во всех основных поисковых системах: <link rel="canonical">
. Примеры:
http://newsite.com/?ref=oldsite
http://newsite.com/
http://newsite.com/?ref=oldsite&page=main
и http://newsite.com/?page=main&ref=oldsite
http://newsite.com/?page=main