检测用户来自哪个页面
Detect what page the user came from
我有几个网站:
- https://ictsupport.ga
- https://auth.ictsupport.ga
- https://account.ictsupport.ga
- https://admin.ictsupport.ga
用户需要在 auth.ictsupport.ga 站点上进行身份验证。用户登录后,需要重定向到用户来自的受保护页面(ictsupport.ga, account.ictsupport.ga or admin.ictsupport.ga)
我该怎么做?
在您的所有页面上,(或单个 index.php)在您调用 session_start()
之后
在脚本末尾设置 $_SESSION['lastUrl'] = $_SERVER['REQUEST_URI']
。因此您的脚本的其余部分可以在稍后重估之前访问以前的 url 。
使用 $_SERVER['HTTP_REFERER']
它将给出最后一页 url 无论它来自同一个应用程序还是来自外部站点。
$lastUrl = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
第一种可能:需要做跨域认证。
第二种可能性:在第一个站点 (account.ictsupport.ga, admin.ictsupport.ga) 为用户生成令牌,将其存储在数据库中并使用地址中的令牌重定向用户 (www.finaldestination.com/?token=一些TokenizedToken)。在您的最终站点上,您可以使用此令牌查找关联用户并将他验证为管理员或其他用户。您可以将小 api 点限制为您的最终目的地站点的 ip,以接收有关令牌的用户信息。也许将其限制为每 m 次 n 个请求。你可以限制令牌的生命周期几秒,因为重定向是自动的,所以应该更安全。
我有几个网站: - https://ictsupport.ga - https://auth.ictsupport.ga - https://account.ictsupport.ga - https://admin.ictsupport.ga
用户需要在 auth.ictsupport.ga 站点上进行身份验证。用户登录后,需要重定向到用户来自的受保护页面(ictsupport.ga, account.ictsupport.ga or admin.ictsupport.ga)
我该怎么做?
在您的所有页面上,(或单个 index.php)在您调用 session_start()
之后
在脚本末尾设置 $_SESSION['lastUrl'] = $_SERVER['REQUEST_URI']
。因此您的脚本的其余部分可以在稍后重估之前访问以前的 url 。
使用 $_SERVER['HTTP_REFERER']
它将给出最后一页 url 无论它来自同一个应用程序还是来自外部站点。
$lastUrl = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
第一种可能:需要做跨域认证。
第二种可能性:在第一个站点 (account.ictsupport.ga, admin.ictsupport.ga) 为用户生成令牌,将其存储在数据库中并使用地址中的令牌重定向用户 (www.finaldestination.com/?token=一些TokenizedToken)。在您的最终站点上,您可以使用此令牌查找关联用户并将他验证为管理员或其他用户。您可以将小 api 点限制为您的最终目的地站点的 ip,以接收有关令牌的用户信息。也许将其限制为每 m 次 n 个请求。你可以限制令牌的生命周期几秒,因为重定向是自动的,所以应该更安全。