首先,<html>
标签不属于<head>
. Meteor 总是使用 HTML5 文档类型定义。即使您设法将其更改为 XHTML,您最终也可能会得到无效的 XHTML,因为注入 HTML 的扩展包假定为 HTML5。
其次,不需要为 OpenGraph 标签声明任何命名空间。像 "og:title" 这样的字符串只是属性内的不透明数据,它们不会影响 HTML 解析器。
更新
我使用 Facebook 的调试页面检查了它,它确实不起作用:http:
//developers.facebook.com/tools/debug
这产生了“解析输入 URL 时出错,没有数据被抓取”错误。
我还使用应该触发可爬取程序包的特殊转义片段 URL 检查了页面:
http ://bubble.meteor.com/?_escaped_fragment_=
结果页面不包含 HTML 内容,并且 Javascript 标记仍然存在,这表明可蜘蛛程序包不起作用。您是否将那个添加到您的项目中?( meteor add spiderable
)。
如果你添加了它,它就不起作用。如果运行 PhantomJS 失败,spiderable 包将返回正常页面。你应该在你的本地开发版本上检查它,使用上面的 URL 来触发可爬取。
我还注意到您使用 'school' as og:type
,据我所知,这不是有效类型。请尝试使用“网站”。
更新 2
还可以查看 Chris Mather 关于可蜘蛛包的截屏视频: http ://www.eventedmind.com/posts/meteor-the-spiderable-package
在这个截屏视频中,他提到了一个潜在的问题,即从未标记为就绪的订阅并导致可抓取包失败。也许这会导致您的问题?