HTTPS页面上使用HTTP值(http://schema.org/WebPage
)静态设置微数据的itemtype
属性是否正确,还是我需要在所有页面上使用HTTPS值(https://schema.org/WebPage
)?
由于站点的 HTTP 和 HTTPS 版本都可用,我可以将其设置为//schema.org/WebPage
吗?
tl;dr:使用 http
URI。
在网站管理员SE的回答中,我解释了为什么你应该偏爱http
而不是https
Schema.org URI:http
URI似乎是规范的,因为 Schema.org 词汇的实际定义只定义了http
,而不是https
。此外:所有的例子(甚至在HTTPS上)都使用HTTP变体,作者提到他们更喜欢看到HTTP变体的使用,RDFa的初始上下文只定义了HTTP变体(所以大多数RDF世界将使用HTTP)。
在网站管理员SE的回答中,我解释了为什么你不应该对词汇表使用协议相对URI:词汇URI通常不会被取消引用,并且永远不会从词汇表中嵌入一些东西,所以绝对没有必要仅仅因为你使用HTTPS(它类似于简单地链接到外部页面, 甚至可能无法通过 HTTPS 访问)。最重要的是,如果通过与 HTTP/HTTPS 不同的协议访问文档,则 Schema.org 标记将不再有效,并且某些解析器可能无法识别您正在使用 Schema.org 词汇表,因为它们可能会查找完整的 URI,而无需对 itemtype
属性应用 URI 解析。
在 2015 年 11 月的网站管理员 SE 上更新了该答案,其中包含指向有关 https 的 schema.org 常见问题解答的链接:
问:我们应该在标记中写入 https://schema.org 还是 http://schema.org?
简而言之,schema.org 将迁移到https,您现在可以使用https URL,但不要急于切换。
关于协议相对 URL...请不要使用它们,因为它们是黑客。每当在 Web 上超链接文档时,都支持使用绝对或根相对 URL。
使用 HTTP 值 [...] 静态设置微数据的
itemtype
属性是否正确?
根据 Schema.org 常见问题解答,HTTP或HTTPS在您的itemtype
中都可以。包含 HTTP 和 HTTPS 方案的示例对于使用和不使用 TLS 的网页都是正确的。
如果你有指向不同方案的绝对URL的混合,那么人们更有可能注意到它并想知道为什么事情不一致。因此,当您更新时,请重构现有itemtype
。