对于令人困惑/模糊的问题标题,我们深表歉意。我无法想出一个更好的。
情况
假设页面abc.php
有一组锚标记。
<a href="xxx.php">AAA</a>
<a href="xxx.php">BBB</a>
<a href="xxx.php">CCC</a>
如果我点击BBB
,是否可以在xxx.php
内找到BBB
是将其带到此处的链接?以同样的方式点击CCC
,xxx.php
是否可以通过CCC
链接知道重定向?
简而言之,我正在寻找一组重定向到单个页面的链接,并在该页面中确定导致重定向的链接。
PS :我知道我可以使用 query strings
来做到这一点,但我希望尽可能避免使用它们。此外,我还希望它只在PHP中(如果可能,即服务器端;类似$_SERVER['HTTP_REFERER']
)。
答案 0 :(得分:1)
如果您不想在客户端上公开查询字符串(我没有看到为您的问题范围避免它们的原因),您希望在服务器端执行所有操作,您可以尝试使用重写Apache的规则。
像
这样的东西<a href="xxx_aaa">AAA</a>
<a href="xxx_bbb">BBB</a>
<a href="xxx_ccc">CCC</a>
并在.htaccess中重写规则,如:
RewriteRule ^xxx_(.*)$ xxx.php?id=$1
在你的剧本中,你可以知道它的来源
$_REQUEST['id']
是的,即使您没有公开查询字符串,最后也会使用查询字符串,但$ _SERVER ['HTTP_REFERER']等解决方案将无效。