0

我需要能够确定用户刚刚来自哪个页面,以确定要显示哪些链接,例如面包屑或指向上一个下一个项目的链接。这基本上是HTTP_REFERERPHP 中的功能,但我需要一种跨多个页面跟踪它的方法。我还需要“支持”后退按钮。

我注意到 Facebook 使用“ref”的查询/获取参数来跟踪引用页面。(他们也避免重新加载整个页面,而是使用 AJAX,但我现在没有预算这样做。)另外,我正在处理的网站需要被谷歌索引,所以这种方法也将要求我添加规范链接标签

我想知道 ref/referrer 查询参数是否是最好的方法,或者还有哪些其他选项?

4

1 回答 1

3

如果你想要面包屑,你根本不应该使用HTTP_REFERER。无论他们来自哪里,例如User > Albums > AlbumName > Photo,即使他们来自朋友给他们的直接链接,这都应该是到达他们所在位置的合乎逻辑的路径。也就是说,如果您确实想返回几页,只需将它们作为数组存储在SESSION变量中即可。

我很确定 Facebook 只是使用 refGET变量来收集一些关于用户正在使用哪些按钮的统计信息,因为有多种方法可以访问同一页面。

这些都不应该破坏后退按钮,或干扰您的规范标签。


来自评论:您可以使用?ref=blah标签或会话变量($_SESSION['history'][0] = $_SERVER['HTTP_REFERER']REQUEST_URI)。使用任何你觉得最容易的东西。会话变量依赖于 cookie 或通过 URL 传递 ID,GET 只会使 URL 变得混乱,并且可能会传递给朋友。

于 2009-07-06T04:16:46.180 回答