我知道这已被问过几次,但我真的很困惑,因为这几天就停止了我的新链接。所有缓存的旧链接都可以正常工作。
我的meta标签非常整洁。 facebook调试工具不会报告任何错误/警告。
以下是我的元标记..
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta property="fb:app_id" content="820998487913242">
<meta property="fb:admins" content="param.krish.5">
<meta property="fb:admins" content="obtest.obkrish">
<meta prefix="og: http://ogp.me/ns#" property="og:site_name" content="Salefrog.in">
<meta prefix="og: http://ogp.me/ns#" property="og:type" content="website">
<meta prefix="og: http://ogp.me/ns#" property="og:url" content="http://www.salefrog.in/register_fmp">
<meta prefix="og: http://ogp.me/ns#" property="og:title" content="Salefrog.in : Register as a Freelance Marketing Partner (FMP)">
<meta prefix="og: http://ogp.me/ns#" property="og:description" content="Register as a FMP. Join us. Get a FMP login and get paid as you earn credit points. More details in your login upon registration.">
<meta property="og:image" content="http://www.salefrog.in/img/fmp-picture.jpg">
<meta property="og:image:type" content="image/jpeg">
<meta property="og:image:width" content="250">
<meta property="og:image:height" content="250">
<meta name="title" content="Salefrog.in : Register as a Freelance Marketing Partner (FMP)">
<meta name="description" content="Register as a FMP. Join us. Get a FMP login and get paid as you earn credit points. More details in your login upon registration.">
<link rel="image_src" href="http://www.salefrog.in/img/fmp-picture.jpg">
</head></html>
Facebook调试工具告诉我它会拾取图像,但图像预览不仅仅是那里(看起来是隐藏的),如下所示。
当我在“og:image”上单击“空白”空格时,它会在单独的窗口中打开图像,那么为什么它不会在调试工具中显示预览图像?
我尝试将图片更改为不同大小的图片,如250x250,更大等等,但没有任何帮助。当我将一个旧的缓存图像放在元标记中时,它会显示该图像。这告诉我旧的缓存图像很好,但由于某些原因,较新的图像根本没有显示。
我使用调试工具中的链接http://www.salefrog.in/register_fmp进行了测试。如果你们可以找到一些错误,请告诉我,因为它真的可以帮助我节省时间,而不是我自己解决这个问题。
答案 0 :(得分:1)
我解决了这个问题。这是因为.htaccess阻止(或不让facebook)解析图像,这是它投掷空白图像的原因,没有显示任何错误。
我如何修复或分析整个问题?
由于facebook调试工具没有报告错误,并且没有在apache日志中看到任何错误,我怀疑它可能是工具本身没有感知到整个过程的任何错误因此它必须与图像有关本身或其他东西。
来自facebook的请求点击我的网络服务器,该网站服务器有一个.htaccess重定向到一个单独的php,它只响应元标记,没有别的。
由于Facebook调试工具或我的网络服务器httpd日志中没有报告错误,因此可能导致问题的原因有两个。
由于我对前两个问题毫无疑问,我去了清单中的第3个项目。
我怀疑来自fb的请求不是取得我的图像可能是由于“HTTP GET”重定向发生在图像请求上。
解决方案
我在重定向之前的.htaccess中添加了以下行,以便所有图像请求直接转到文件,这只是修复了整个问题。
..
RewriteCond %{HTTP_USER_AGENT} ^(facebookexternalhit)
RewriteCond %{REQUEST_FILENAME} !(img|css|jp?g|png|store_images|category_images|fonts|awesome|ttf|tif|custom_images)
..
我知道在大多数情况下,它可能与元标记或图像本身中的错误有关。但是,就我而言,并非两者兼而有之。
希望这有助于那里的人!