Facebook没有检测到og标签

时间:2016-04-13 12:56:51

标签: c# asp.net facebook

我再次发现自己需要你的集体天才。我有一个使用c#在ASP.NET 4.5中构建的网站,如果它完全相关的话,它就是一个网络表单站点。 我在母版页中有以下脚本来生成所需的元数据:无论标记。

var ogtitle = "<meta name=\"og:title\" content=\"" + this.Page.Title + "\" />";
        var ogsname = "<meta name=\"og:site_name\" content=\"Griffiths Web Design\" />";
        var ogtype = "<meta name=\"og:type\" content=\"website\" />";
        var ogdesc = "<meta name=\"og:description\" content=\"" + this.Page.MetaDescription + "\" />";
        var ogurl = "<meta name=\"og:url\" content=\"" + HttpContext.Current.Request.Url.AbsolutePath + "\" />";
        var ogimg = "<meta name=\"og:image\" content=\"www.griffithswebdesign.com/images/binaryearth.jpg\" />";
        fbmets.Text = ogimg + ogtitle + ogurl + ogsname + ogtype + ogdesc;

当我运行网站时会生成以下元标记(我知道它们在那里,因为我在查看源代码时可以看到它们)

<meta name="og:image" content="www.griffithswebdesign.com/images/binaryearth.jpg" /><meta name="og:title" content="A Simple blogging system in ASP.NET" /><meta name="og:url" content="/Blog/Post/24" /><meta name="og:site_name" content="Griffiths Web Design" /><meta name="og:type" content="website" /><meta name="og:description" content="A Simple blogging system in ASP.NET" />

尽管如此,当我尝试分享从我的网站到Facebook的链接时,它仍然没有找到。当我使用facebook调试器时,它无法找到标签。有什么我想念的吗?还是我完全误解了这个过程?据我所知,由于母版页中的脚本,我在每个页面中都有必需的标签。显然有些事情是错的,但正如我所说,我迷失了。

虽然这似乎发生在每个页面上,但这里有一个指向页面的链接,所以你可以看看:

http://www.griffithswebdesign.com/Blog/Post/24

任何帮助都将非常感谢:)谢谢你提前。

2 个答案:

答案 0 :(得分:3)

您的网站不支持ipv6,尽管它有AAAA记录。当我使用ipv6时,这是我的要求:

GET /Blog/Post/24 HTTP/1.1
Host: www.griffithswebdesign.com
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0 Iceweasel/38.7.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive

HTTP/1.1 404 Not Found
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Date: Wed, 13 Apr 2016 13:14:16 GMT
Connection: close
Content-Length: 315

当我使用wget(wget -4 -S http://www.griffithswebdesign.com/Blog/Post/24)强制ipv4时,我看到了:

HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 63543
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.30319
Set-Cookie: ASP.NET_SessionId=n324zpflwyicoiwdwy0fynbu; path=/; HttpOnly
X-Powered-By: ASP.NET
Date: Wed, 13 Apr 2016 13:17:10 GMT

答案 1 :(得分:2)

好的,这是一个问题,

您在og标记中使用meta name,而正确的语法是meta property,请将name切换为property,然后尝试调试。

正确的og标签应为

<meta property="og:image" content="www.griffithswebdesign.com/images/binaryearth.jpg" />
<meta property="og:title" content="A Simple blogging system in ASP.NET" />
<meta property="og:url" content="/Blog/Post/24" />
<meta property="og:site_name" content="Griffiths Web Design" />
<meta property="og:type" content="website" />
<meta property="og:description" content="A Simple blogging system in ASP.NET" />