• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

获取跳转前的url

php 搞代码 3年前 (2022-01-23) 17次浏览 已收录 0个评论
文章目录[隐藏]

例如从 淘宝那里修改一个链接,跳转到a.php
然后a.php又 hedader_location重定向到 b.php
在b.php 用 http_referer 获取到的是淘宝的url,请问用什么方法能获取 中间这个页面 a.php?

不希望是在a.php那里传值过去,因为有很多页面都跳转到b.php,在每个中间页面处理起来太麻烦

回复内容:

例如从 淘宝那里修改一个链接,跳转到a.php
然后a.php又 hedader_location重定向到 b.php
在b.php 用 http_referer 获取到的是淘宝的url,请问用什么方法能获取 中间这个页面 a.php?

不希望是在a.php那里传值过去,因为有很多页面都跳转到b.php,在每个中间页面处理起来太麻烦

首先如果在不在url里面传值,或者其他session cookie的情况下,能获取到来路的就只有reffer。

但是:
从这个事情的结果上讲
当浏览器打开一个301链接的时候,实际上是要求浏览器重新请求一遍新的提供的301目标地址。然后浏览器直接重新请求了新页面,并没有带上运行301的url。结果就是服务器与客户端并没有任何记录这个301页面url信息,谁也获取不到。

举个生活的例子,本#文来源gaodai$ma#com搞$$代**码网$我们买了个中转的机票,在上第二架飞机的时候,你虽然拿出机票,那个飞机告诉你,飞机有问题,要你做另外一个飞机。然后我们拿这个票坐了另外的飞机,那这个飞机看到票的时候,只知道你第一架飞机是什么,并不知道是哪个飞机让你转过来的。机票就是在每次浏览器请求带上去的http-reffer

这也是在http协议的一些用户隐私策略中所提到的,并不是强制要求,只是说没有必要,如果http reffer被记录为跳转页面,那么点浏览器返回将又回到自己的页面上来,所以这个做法逻辑上也是讲得通。
https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.36
https://www.w3.org/Protocols/rfc2616/rfc2616-sec15.html

document.referrer

如果不考虑IE67的话可以使用h5中的localstorage,至于cookie也能实现


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:获取跳转前的url

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址