加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Facebook – 解析输入URL时出错,没有数据被缓存,或者没有

发布时间:2020-12-13 17:36:24 所属栏目:PHP教程 来源:网络整理
导读:经过研究,我发现很多人面临同样的问题.但到目前为止,我不解决,这发生在我将服务器切换到linode.com后 我们举个例子. www.acemark2u.com是托管在linode服务器下的一个网站, 当我在https://developers.facebook.com/tools/debug/og/object/中尝试调试时,它无法
经过研究,我发现很多人面临同样的问题.但到目前为止,我不解决,这发生在我将服务器切换到linode.com后

我们举个例子. www.acemark2u.com是托管在linode服务器下的一个网站,
当我在https://developers.facebook.com/tools/debug/og/object/中尝试调试时,它无法正确获取scrape信息,如果我尝试使用其中一页www.acemark2u.com/about-us,它只会显示错误“解析输入URL错误,没有数据被缓存,或没有数据被刮.“

奇怪的事情发生.当我尝试调试使用ip地址106.187.35.114/~acemark2一切顺利.抓取很好,页面没有错误404.

我怀疑它可能由“gethostbyaddr”功能引起(参考:http://www.gearhack.com/Forums/DisplayComments.php?file=Computer/Network/Internet/Preventing_Your_Web_Server_From_Blocking_Facebook_Share),但到目前为止,我没有解决方案.

对于遇到同一问题但出于不同原因的人,我发现了一些有趣的事情,关于Facebook如何“刮”页面,在进行一些试验时检查服务器的日志.

首先:如果你没有尝试与FB共享一个页面,FB从来没有试图去除它,如果你只是把url放在Debug工具中,它不会这样做.
这是第一个原因,因为您收到错误:它只是声明FB没有页面上的信息,您必须“强制”它来刮擦页面.

当您第一次尝试分享页面时,FB会将其擦除(请求您的服务器首页40k的页面并分析打开的标签).
可能发生的是您看不到图像:Facebook Share Dialog does not display thumbnails one first load

原因是FB幕后仍在刮擦您的页面并缓存图像.下一次,其实你也有形象.
如何解决?预缓存:https://developers.facebook.com/docs/sharing/best-practices#precaching

或简单地添加

<meta property="og:image:width" content="450"/>
<meta property="og:image:height" content="298"/>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读