2017-09-16 79 views
1

从今天下午开始,Facebook无法阅读我正在工作的网站的og标签。 Facebook调试器说,当我可以在我的源代码中清楚地看到它们时,我所有的属性都缺失(og:url,og:type,og:title,og:image,og:description等)。Facebook上的网站代码很奇怪

当我查看此页面的来源(或此域上的任何其他页面)时,一切看起来都正常。

但是,当我在Facebook的调试器中输入该页面并使用'请参阅我们的刮板看到您的URL的确切内容'时,代码全部混乱,缺少单词和空格。实际上,包含og属性的整个部分缺失。

发生了什么事?我最近没有改变网站的任何内容,并且之前工作正常。只有最近改变的是我的DNS设置,但这不应该影响Facebook ...

任何人都看到我在这里失踪? 许多人在其他线程建议,因为路径是亲属而不是绝对的(例如og:image,例如),但这显然不是我的问题,因为我的路径是绝对的,所有我的部分og属性只是在Facebook上刮时才显示出来。

感谢

回答

0

有时候浏览器自动修复一些HTML的正确渲染页面,诸如此类结束标签,添加缺少的语义标记等,但在机器人上有效的HTML更苛刻一点。

让我们来看看您共享该页面源头的前12行。这是浏览器接收:

<!doctype html> 
<!--[if IE 8]><html 
class="ie8" lang="fr-FR" prefix="og: http://ogp.me/ns#"> <![endif]--> 
<!--[if IE 9]><html 
class="ie9" lang="fr-FR" prefix="og: http://ogp.me/ns#"> <![endif]--> 
<!--[if gt IE 8]><!--><html 
lang="fr-FR" prefix="og: http://ogp.me/ns#"> <!--<![endif]--><head><link 
rel="stylesheet" type="text/css" href="http://cdn.vedettequebec.com/wp-content/cache/minify/ef20c.css?x41125" media="all" /><meta 
charset="UTF-8" /><meta 
name="viewport" content="width=device-width, initial-scale=1.0"><link 
rel="pingback" href="http://vedettequebec.com/xmlrpc.php" /><meta 
name="author" content="BadassB"><link 

正如你所看到的,属性包裹起来到下一行,这是一种有效的,大多数浏览器会处理这一点,但看起来像Facebook的刮板修剪\n字符和解释代码,如下所示:

<!doctype html><!--[if IE 8]><htmlclass="ie8" lang="fr-FR" prefix="og: http://ogp.me/ns#"> <![endif]--><!--[if IE 9]><htmlclass="ie9" lang="fr-FR" prefix="og: http://ogp.me/ns#"> <![endif]--><!--[if gt IE 8]><!--><htmllang="fr-FR" prefix="og: http://ogp.me/ns#"> <!--<![endif]--><head><linkrel="stylesheet" type="text/css" href="http://cdn.vedettequebec.com/wp-content/cache/minify/ef20c.css?x41125" media="all" /><metacharset="UTF-8" /><metaname="viewport" content="width=device-width, initial-scale=1.0"><linkrel="pingback" href="http://vedettequebec.com/xmlrpc.php" /><metaname="author" content="BadassB"><link 

您现在看到该问题了吗?由于标签名称旁边添加的属性会导致代码被破坏,造成大量“未封闭的标签”。例如,检查<html>标签转换为<htmlclass>,并且其结束标签将为</html>,因为标签名称后没有任何内容,使该标签未关闭。

禁用任何可能损害您的HTML的插件,像HTML缩小器一样的插件。如果有像“将属性换行到新行”那样检查设置。

+0

我确实看到了你所指的问题,但我不明白为什么要这样做......最后,确实是一个微型插件的问题。 – CharleyB0y

0

我在我的网站上也发现了这个问题。这是因为W3 Total Cache的Minify功能。禁用它并清除所有缓存,那么你很好。

+0

这完全解决了它,谢谢!事情是,我已经使用W3 Total Cache的Minify功能超过一年了,为什么它刚刚开始导致问题?我一直保持相同的设置。 – CharleyB0y

+0

Facebook最近可能改变了他们的抓取工具。 – LewCPE