Как я могу переместить URL с помощью перенаправления 301 и сохранить лайки Facebook и информацию Open Graph? - PullRequest
30 голосов
/ 26 августа 2011

Я понимаю, что метатег og:url является каноническим URL для ресурса в открытом графике.

Какие стратегии я могу использовать, если я хочу поддерживать 301 перенаправление ресурса, сохраняя его место в открытом графике? Я не хочу терять свои лайки, потому что я изменил URL.

Это лучший способ сделать это, чтобы сохранить исходный URL-адрес содержимого и сослаться на это? Есть ли другие стратегии для борьбы с этим?

Чтобы уточнить - у меня есть страница:

/page1, с og:url из http://www.example.com/page1

Теперь я хочу переместить его в /page2, используя перенаправление 301 на http://www.example.com/page2

Есть ли у меня какие-либо варианты, чтобы избежать потери лайков и комментариев, кроме установки мета og:url в /page1?

Ответы [ 2 ]

50 голосов
/ 14 апреля 2012

Короткий ответ, вы не можете.

Как только объект был создан на стороне Facebook, его URL на графике Facebook фиксирован - Likes и Comments связаны с этим URL и объектом;вам нужно, чтобы этот URL был доступен сканеру Facebook, чтобы сохранить этот объект в будущем.(обратите внимание, что объект, становящийся недоступным, не обязательно удаляет его из Facebook, но фактически вы начинаете с него)

Я обычно рекомендую здесь (с примерами http://www.example.com/oldurl и http://www.example.com/newurl):

  • На / новой странице сохраните тег og: url, указывающий на / oldurl
  • Добавьте перенаправление HTTP 301 из / oldurl в / newurl
    • ИсключитьИскатель Facebook из этого перенаправления
    • Продолжайте обслуживать метатеги для страницы на http://www.example.com/oldurl, если запрос поступил от искателя Facebook.
    • Нет необходимости возвращать искателю фактическое содержимое, просто простую HTML-страницу с соответствующими тегами

Таким образом:

  1. Существующие экземпляры объекта в Facebook при щелчке приводят пользователей на правильную (новую) страницу с помощью перенаправления
  2. Кнопка «Нравится» на (новой) странице будет по-прежнему похожа на правильный объект(но по старому URL)

Если вы перемещаете много URL-адресов или полностью переписываете свою схему URL-адресов, вам следует использовать новые URL-адреса для новых статей / продуктов / и т. д., но вынеобходимо сохранить перенаправление на месте, если вы хотите сохранить лайки, комментарии и т. д. для более старого контента.

Это относится и к смене домена.

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

Кстати, UA сканера Facebook в настоящее время facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)

0 голосов
/ 13 июля 2012

У меня такая же проблема с моими старыми сайтами.Домены меняются, администраторы хотят изменить URL для seo и т. Д.

Я пришел к выводу, что лучше всего иметь какой-то уникальный идентификатор в db только для Facebook - с самого начала.Например, для статей у меня есть myurl.com/a/123, где 123 - это идентификатор статьи.

Настоящий URL-адрес - myurl.com/category/article-title.Затем статью можно поместить в другую категорию, переименовать и т. Д. С обширной логикой для переадресации 301 за ней.Но основной идентификатор fb может остаться неизменным навсегда.

Конечно, это жизнеспособно только при запуске с нового сайта или при первой реализации комментариев fb.

Просто идея, еслиВы можете планировать заранее :) Дайте мне знать, что вы думаете.

...