最佳答案
众所周知,URL 片段(#
之后的部分)不会发送到服务器。
当涉及到服务器重定向(通过 HTTP 状态302和 Location:
头)时,我确实想知道片段是如何工作的。
我的问题有两方面:
如果原始 URL 有一个片段(/original.php#foo
) ,并且对 /new.php
进行了重定向,那么原始 URL 的片段部分是否会丢失?或者它有时被应用到新的 URL?< br > 在这种情况下,新的 URL 会是 /new.php#foo
吗?
不管原始 URL 是什么,如果服务器重定向到一个带有片段(/new.php#foo
)的新 URL,该片段会得到“尊重”吗?还是说服务器根本就不需要干预片段——浏览器会因此忽略它而直接转到 /new.php
吗?