从HTTP切换到HTTPS,失去所有Facebook“喜欢”计数

时间:2014-12-03 00:47:39

标签: facebook facebook-like

两个月前我有一个站点切换到https://www.example.com,它失去了所有'喜欢'的数量。

即使我使用facebook fql查询,它现在在http://和https:/

之间具有相同的计数

任何人都知道这是否是facebook的错误?或者有一个解决方法来检索旧的计数?

非常感谢您的帮助。

5 个答案:

答案 0 :(得分:13)

通常Facebook喜欢链接到URL。即使是单个角色的改变也会失去Facebook的喜欢。

这是Facebook上的链接

https://developers.facebook.com/docs/plugins/faqs#moving-urls

转到页面底部,找到此部分如何将网页移动到其他网址? - 我可以将喜欢的数量迁移到新的网页位置吗?

<meta property="og:url" content="https://example.com/old-url" />

您需要指示facebook抓取工具重新抓取您的网址,以使更改生效:

https://developers.facebook.com/tools/debug/sharing

这应该可以解决您的问题。

答案 1 :(得分:6)

在将HTTP迁移到HTTPS时,为了不丢失Facebook喜欢,应遵循以下步骤:

1。在网页上使用 301重定向,将HTTP转换为HTTPS。

2。http://www.example.com

的HEAD部分添加 og:url标记
<meta property="og:url" content="http://www.example.com" />

3。在页面上修改 Facebook代码以计算HTTPS赞

<iframe src="//www.facebook.com/plugins/like.php?href=https%3A%2F%2Fwww.example.com&amp;width&amp;layout=box_count&amp;action=like&amp;show_faces=false&amp;share=true&amp;height=65" scrolling="no" frameborder="0" allowTransparency="true"></iframe>

<div class="fb-like" data-href="https://www.example.com" data-layout="standard" 
      data-action="like" data-show-faces="true"</div>

4. :转到Facebook网站上的 Sharing Debugger
您必须登录Facebook才能使用它。

输入https://www.example.com,然后按调试按钮。

enter image description here

5. 如果该网页的HTTPS版本没有其他喜欢,则会显示以下信息:

**enter image description here**

获取新信息按钮。

6。如果网页的HTTPS版本或Facebook抓取工具已经访问过您的网页,那么任何机会都会出现以下信息:

enter image description here

重新抓取按钮。

7。 刷新您的网页,Facebook应该存在。

有关Facebook抓取工具如何工作的更多信息,请访问:
https://developers.facebook.com/docs/sharing/webmasters/crawler

答案 2 :(得分:0)

我使用iframe版的FB Like按钮代码,在我的情况下效果很好:

  1. 将.htaccess中的页面重定向到除Facebook Bot(Apache 2.4的代码)以外的所有HTTPS版本:

    RewriteCond %{HTTP_USER_AGENT} !^facebookexternalhit
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,QSA,L,NE]
    
  2. og:url标记中使用URL的HTTP版本(以HTTP以及页面的HTTPS版本呈现):

    <meta property='og:url' content="http://my-domain.com/xyz">

  3. canonical标记中使用URL的HTTPS版本(这适用于“世界其他地区”,除了Facebook):

    <link rel="canonical" href="https://my-domain.com/xyz">

  4. iframe中将URL的HTTP版本与Facebook之类的按钮一起使用:

    <iframe scrolling="no" frameborder="0" allowtransparency="true" src="https://www.facebook.com/plugins/like.php?layout=button_count&amp;show_faces=false&amp;width=200&amp;action=like&amp;colorscheme=&amp;height=21&amp;href=http%3A%2F%2Fmy-domain%2Fxyz"></iframe>

通过这种方式,您可以保留所有页面上的所有点赞并拥有完整的HTTPS流量。

我建议仅对“旧页面”使用此技巧。新页面可以在所有地方使用带有HTTPS的新地址(在“旧网址”上没有“喜欢”)。

与其他解决方案相比,优点是不需要FB Bot重新抓取所有页面。点赞会立即保留(如果您不在iframe中使用HTTP URL,它也可以使用,但是您需要重新抓取每个页面才能在新页面上看到旧的点赞。)

答案 3 :(得分:0)

如果您将带有fb的按钮与旧的“ http”链接一起使用,则会显示所有旧的喜欢项:

<div class="fb-like" data-href="http://www.example.com" data-layout="button_count" data-show-faces="false" data-send="false" data-share="true"></div>

答案 4 :(得分:-1)

您可以恢复社交媒体分享。对于G +而言,只需修改Google+分享按钮即可轻松实现,这样您就可以在http而非https上共享网址。 当涉及到fb时,你需要:

  1. 使用调试界面查看您的网址
  2. 点击&#34;再次刮&#34; - 所有社交计数都将为零
  3. 更新rel = canonical并使http版本成为首选但仅适用于FB抓取工具
  4. 识别FB抓取工具;这取决于你使用的是什么;这里的确切代码示例:https://cognitiveseo.com/blog/13431/recover-facebook-shares-https/
  5. 希望这会帮助你!