【问题标题】:is it possible to send the $_SERVER[HTTP_REFERER] when doing a header(location: ) request?进行标头(位置:)请求时是否可以发送 $_SERVER[HTTP_REFERER] ?
【发布时间】:2011-08-26 05:37:42
【问题描述】:
我想用上一个页面的 HTTP_REFERER 创建一个重定向页面,这只是一个重定向页面:
假设我有 home.php,在那里你点击一个链接,你会得到 redirect.php 这只是一个location("finish.php"); 我需要得到 redirect.php 的引用地址,但它只给了我home.php 引用。
任何帮助将不胜感激。
这适用于 iPhone webapp 从全屏模式到浏览器模式的转换,如果这对任何人都有帮助的话。
【问题讨论】:
标签:
php
iphone
web-applications
redirect
【解决方案1】:
这是不可能的。你不能信任 HTTP_REFERER 但你可以将当前的 $_SERVER['REQUEST_URI'] 保存到会话并使用它来重定向
【解决方案2】:
您对 客户端 发送到服务器的 HTTP Referer 标头绝对没有影响。您不能指示客户端在其下一个请求中发送特定标头,因为这与服务器无关(可以这么说)。
将 URL 中的信息作为查询变量或通过 cookie/会话传输。无论如何,您都应该这样做,因为 Referer 标头纯粹是可选的和信息性的,不应依赖。
【解决方案3】:
不,您不能 - 您无法更改客户端/浏览器发送这些标头的方式。
改为使用会话作为重定向的解决方案 - 这也将为您提供一些灵活性。