0

我环顾四周,但在这里找不到适合我的问题的解决方案。

我想要做的是 1)清理带有 GET 参数的 URL,2)将这些 GET 参数保存在会话变量中。

这也需要在站点上的所有文件上完成,因此 GET 参数可以以任何顺序传递到服务器上的任何文件。

因此,例如,如果其中一个文件是:

http://mydomain.com/page.php?a=1&b=2&c=3

另一个是:

http://mydomain.com/anotherpage.php?b=2&a=1

我需要分别重写或重定向到 /page.php 和 /anotherpage.php,同时将 GET 参数存储在会话中,因此 $_SESSION['a'] = 1 等。

我已经设法做到这一点(有点),通过在每个文件的标题中(在其他任何东西之前)包含一个名为 rewrite() 的函数并遍历其中的所有变量,将它们存储在会话中,然后通过标题重定向文件( ) 到 $_SERVER['SCRIPT_NAME']。

它有点工作,但我现在看到的是跟踪脚本存在问题 - 当我尝试集成用户跟踪脚本时,由于大量重定向而出现错误。由于重定向,来自其他应用程序/网站的回发也会引发 301/302 错误。

所以我想知道是否有一种更简单的方法,只为每个调用的 URL 获取一个 QUERY_STRING,将所有键/值对从那里存储在会话 cookie 中,键是会话的名称,值是会话的值,只是简单加载干净的 SCRIPT_NAME 而不是无限重定向的可能性等等?

谢谢!

4

0 回答 0