我正在使用Twitter Card Preview工具来测试我的Twitter卡设置。
<meta property="twitter:url" content="http://liberalgeek.com/content/why-do-atheists-celebrate-christmas" />
<meta property="twitter:card" content="summary" />
<meta property="twitter:description" content="I can't speak for all atheists, I can only speak for myself, so please leave a comment below and explain why you celebrate Christmas! When I hear someone ask, "Why do atheists celebrate Christmas?" my first thought often is: Better Question: Why do Christians celebrate Christmas?" />
<meta property="twitter:creator" content="@kennywyland" />
<meta property="twitter:title" content="Why do Atheists celebrate Christmas?" />
当我使用上面的元标记时,预览工作,我得到了预期的结果。当我尝试添加twitter:image标签时,它会失败。这是一个例子:
<meta property="twitter:image" content="http://liberalgeek.com/sites/default/files/styles/large/public/Christmas%20Tree.jpg" />
如果我包含一个twitter:image元标记,我单击预览按钮,它会旋转一点,然后给我错误:
Looks like something is technically wrong.
Please try again in a few minutes.
我在该网站上尝试过其他图片但没有成功。我尝试过在同一个apache服务器上托管的其他(非drupal)站点,以确保它不是一个drupal问题:
<meta property="twitter:image" content="http://www.journalscape.com/kenny/images/acupuncture-kenny-2003-08-20-small.jpg" />
如果我将其中一个图像复制到另一台具有不同apache服务器的计算机上,twitter会看到它并且它可以正常工作。 Twitter在预览中显示它。
我已检查过两个网站上的robots.txt。我的robots.txt中没有任何内容可以防止Twitterbot被抓取,但以防万一我已经明确添加了他们建议的代码:
User-agent: Twitterbot
Disallow:
但是,我正在观看我的apache网络日志滚动,Twitter从不尝试获取图像。当我点击预览按钮时,我希望在访问日志中看到一个条目,显示twitter获取图像......但没有。我尝试了几张图片以确保它不是缓存问题。
我做错了什么?
编辑:我发现在我的机器上运行的其中一个站点(相同的apache)运行正常。如果我使用这张图片:<meta property="twitter:image" content="http://www.geekqi.com/images/StylizedYinYangRedLucida.png" />
然后Twitter立即取出它。我不明白为什么一个有效,另一个没有。
答案 0 :(得分:1)
事实证明,问题是时间问题。添加robots.txt文件后,我需要等待几个小时让Twitter看到新的robots.txt,然后开始提取我的图片就好了。