SSL打破Facebook Likes按钮

时间:2018-06-15 21:11:46

标签: php wordpress ssl facebook-graph-api facebook-like

我的博客https://sonicscoop.com的帖子可以追溯到2012年,有数百个Facebook“喜欢”,比如这个https://sonicscoop.com/2012/08/29/the-big-list-of-free-pro-tools-plugins-2/,但是当我们切换到{{{}时,他们都失去了正确的数量1}}你可以在这里看到:

https://developers.facebook.com/tools/debug/sharing/?q=https%3A%2F%2Fsonicscoop.com%2F2012%2F08%2F29%2Fthe-big-list-of-free-pro-tools-plugins-2%2F

出于某种原因,Facebook的调试器正在检测规范,https:og:url,即使页面呈现的HTML将其显示为https://

如果我可以让Facebook拿到旧版帖子的http规范,我希望喜欢的人会回到正确的计数。这是我的http://文件:

.htaccess

3 个答案:

答案 0 :(得分:2)

尝试以下解决方案

1)WordPress仪表板

2)移动站点文件(如有必要)后,以管理员身份登录WordPress仪表板。 接下来,从菜单中单击“设置”,然后单击“常规”。

3)单击常规开始。

4)我们将更改的两个字段是WordPress地址(URL)和站点地址(URL)为两个URL都设置了https

5)向下滚动页面,然后单击“保存更改”按钮。

6)之后,设置>永久链接

7)如果需要,请向下滚动并单击“保存更改”。

首先,请检查og:url,然后检查FB like是否对您有用。

答案 1 :(得分:1)

facebook抓取您的页面时,它已重定向到页面的https版本。即使您的og:url使用http版本,我认为Facebook仍将使用页面的规范或最终URL。

尝试将您在.htaccess上的重写条件更改为类似以下内容:

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_USER_AGENT} !facebookexternalhit/[0-9]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]
# --remove www for site
RewriteCond %{HTTP_HOST} ^www\.sonicscoop\.com [NC]
RewriteRule ^(.*)$ https://sonicscoop.com/$1 [L,R=301]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
AddHandler application/x-httpd-php54s .php

答案 2 :(得分:0)

如果它是wordpress网站,则可以使用Really simple SSL插件。

  1. 安装插件并激活。
  2. 转到设置,即可看到SSL。点击它。
  3. 启用ssl。

    此插件将处理所有SSL问题。