我想知道搜索引擎是否尊重 HTTP header field Content-Location
。
这可能很有用,例如,当您想从 URL 中删除 session ID 参数时:
GET /foo/bar?sid=0123456789 HTTP/1.1
Host: example.com
…
HTTP/1.1 200 OK
Content-Location: http://example.com/foo/bar
…
澄清:
我不想重定向请求,因为删除 session ID 会导致完全不同的请求,因此也可能导致不同的响应。我只想声明随附的响应也可以在其“主 URL”下找到。
也许我的例子并不能很好地表达我的问题的意图。所以请看一下 What is the purpose of the HTTP header field “Content-Location”? 。
最佳答案
我认为 Google 刚刚公布了我的问题的答案:the canonical
link relation for declaring the canonical URL .
Maile Ohye来自谷歌写道:
MickeyC said...
You should have used the Content-Location header instead, as per:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
"14.14 Content-Location"@MikeyC:是的,从理论上讲是有道理的,我们当然也考虑过。然而,有几点让我们做出了选择:
我们的数据显示,许多网站上的“Content-Location” header 配置不当。有时,网站管理员会提供长而难看的 URL,这些 URL 甚至都不是重复的——这可能是无意的。他们可能不知道他们的网络服务器甚至发送了 Content-Location header 。
联系站点所有者以清除整个网络中的内容位置问题将非常耗时。我们意识到,如果从头开始,我们可以更快地提供功能。与微软和雅虎!为了支持这种格式,网站管理员只需学习一种语法。
网站管理员通常难以配置他们的网络服务器 header ,但可以更轻松地更改他们的 HTML。 rel="canonical"似乎是一个友好的属性。
关于http - 搜索引擎是否尊重 HTTP header 字段 “Content-Location” ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/438413/