浏览网页时,您可能会遇到包含哈希片段的 URL,例如:
http://www.foo.com/page.php?parameter=kickme#MOREURL
然而,访问服务器端发现这个哈希片段(#MOREURL)神秘地不存在。它是否存在于数字空间中?
答案是否定的。哈希片段是浏览器域的独占驻留者,服务器完全无法访问。无论使用哪种浏览器或服务器端技术,这在 HTML 标准中都是根深蒂固的。
服务器仍然不知道哈希片段。它在处理过程中不起任何作用,处理过程仅发生在浏览器的范围内。从服务器只接收没有片段的 URI 中可以明显看出这一点,将其排除在请求和响应周期之外。
维基百科证实了这种无服务器性质:
“片段标识符的功能与 URI 的其余部分不同:即,它的处理完全在客户端进行,没有服务器的参与。”
虽然哈希片段增强了客户端体验,它的服务器端缺失是不可修改的事实。
以上是为什么服务器上的Hash碎片消失了?的详细内容。更多信息请关注PHP中文网其他相关文章!