如何在从某个页面重定向到另一个页面时获得引用URL
How to get refering URL when redirected from some page to another page
我正在使用php头从几个页面重定向到dev.php
<?php header(Location: dev.php); ?>
我想知道我从哪里被重定向到这里。
我试过
<?php
print "You entered using a link on ".$_SERVER["HTTP_REFERER"];
?>
但它不起作用,因为只有当您使用<a href="dev.php">Go to Developer Page</a>
访问dev.php时,$_SERVER["HTTP_REFERER"];
才起作用
那么我该如何获取引用URL呢?
尝试以下内容。
<?php header(Location: dev.php?referrer=$_SERVER[PHP_SELF]); ?>
或
header('Referer: '.$_SERVER['PHP_SELF']);
header(Location: dev.php);
如果上述方法不起作用,您将不得不继续会话。
您可以在GET:中传递变量
<?php header('Location: dev.php?backurl='.$_SERVER[PHP_SELF]); ?>
然后用这种方式:
$backurl=$_GET['backurl'];
$_SERVER["HTTP_REFERER"] = 'YOUR_URL';
header('Location: dev.php');
exit(0);
您需要手动将referer
添加到标头中:
header("Referer: http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']); // current page
header("Location: dev.php");
你也可以使用CURL。请看下面的示例函数:PHP-Referer重定向脚本
referer标头相当不可靠,有防病毒软件和防火墙可以完全过滤它。你唯一可以非常安全地依赖的是cookie和会话。
Cookie存储在客户端的浏览器中,因此可以进行操作,但如果您存储的是非关键信息,它们就足够了。
如今,会话依赖cookie作为启动它们的一种方式。随机生成的哈希存储在cookie中,相应的数据存储在链接到此哈希的服务器上。当客户端请求下一页时,将检索此数据。有关会话的更多信息,请阅读PHP手册的相应部分。
正如我所写的,现在会话依赖于cookie,除非你意识到安全隐患,否则你不应该这样做。但是,可以使用URL参数传递会话ID。
附带说明:为了使用cookie(以及与它们的会话),设置和最终URL必须在同一域上。如果不是这样,您可以使用请求参数来传递信息。
相关文章:
- 当数据在另一个URL上更新时,AngularJS是否可以在一个URL上触发$watch
- 将json数据发送到另一个url-在您'我从我自己的网址上得到的
- Javascript 转到 URL 如果用户输入特定数字,则转到另一个 URL
- 仅当从另一个 URL 加载数据时,才会触发另一个插件
- regexp(?) 用于从另一个 URL 中提取 URL
- jquery/js - 我有一堆值(字符串).我想通过 POST 将其发送到另一个 URL,我该怎么做
- 是可以用户刷新网页并同时重定向到另一个URL
- 您如何创建一个链接,单击该链接会将您带到一个页面,并打开一个转到另一个 URL 的新选项卡
- 如何使 html 页面的一个区域重定向到另一个 URL,而页面的其余部分保持不变
- 正在获取另一个URL's PHP中的Javascript变量
- 从另一个url或字符串中提取字符串
- 转到另一个url而不重新加载页面
- reactJS在转到另一个URL时如何传递状态?(单击导航栏上的“新建”,转到提交表单)
- 将特定URL重定向到moblile上的另一个URL
- 当用户点击链接时,有哪些选项或方法可以将变量传递到另一个url
- 正在获取另一个URL重定向到的URL
- 如何使用jquery autosuggest重定向到另一个url
- 如何检测iframe是否已从一个URL移动到另一个URL
- 如何从一个URL重定向到另一个URL
- JQuery-DIV内容更改应该是另一个URL