PHP-код, чтобы определить, был ли пользователь 301 перенаправлен на мой сайт - PullRequest
2 голосов
/ 29 февраля 2012

Можно ли в PHP узнать, перенаправлен ли пользователь на мой веб-сайт 301?

Так что в myoldsite.com у меня есть перенаправление 301 в файле .htaccess на mynewsite.com .

Могу ли я разместить некоторый код PHP на mynewsite.com , чтобы распознать, когда пользователь был перенаправлен на 301?Мне просто нужно это, чтобы отобразить конкретное сообщение, если это так.

Большое спасибо за любые указатели здесь: -)

1 Ответ

2 голосов
/ 29 февраля 2012

Я полагаю, что при перенаправлении 301 поле HTTP_REFERER будет содержать исходный реферер:

  • Пользователь вводит oldsite.com в адресную строку, а 301 перенаправляется на newsite.com.
    • referer = ""
  • Пользователь посещает 3rdparty.com, нажимает ссылку, указывающую на oldsite.com и 301, перенаправленную на newsite.com
    • referer = "3rdparty.com"

Такое поведение в некоторой степени имеет смысл для переадресации 301.

Решение: Я думаю, что вы должны добавить параметр строки запроса вВаш ответ 301, такой как ref=oldsite, и проверьте его значение на новом веб-сайте.

Если вас беспокоит наличие параметров строки запроса в ваших URL, вы можете указать поисковым системам игнорировать определенные параметры строки запроса.Процедура варьируется в зависимости от поисковых систем.Очевидно, есть хитрость, которая работает во всех основных поисковых системах: тег <link rel="canonical">.Примеры:

...