0

我有一个松散耦合的网络应用程序(一部分使用 PHP,另一部分使用 WGSI)。WSGI/python 框架与 PHP 应用程序共享身份验证,这意味着通常用户应该

  1. 通过PHP界面登录
  2. 现在用户可以访问任何 WSGI 页面[如果用户已经登录,这部分工作]

我想做的是,如果用户在未登录的情况下(可能来自以前的书签)尝试访问 WSGI 页面,我想将他重定向到登录页面,并在登录后将他重定向回原始页面网址。

我对服务器端编程不是很有经验,所以这是我的问题。

  1. 我应该如何将用户重定向回 PHP 登录页面?HTTP 状态码应该是什么?我需要设置任何额外的标题信息吗?

  2. 将原始 URL 传递给登录页面的好方法/最佳实践方法是什么,然后在登录后将用户重定向回来。

谢谢!

4

1 回答 1

1

如果用户未登录,您可以将状态代码设置为401 Unauthorized并使用location: /login.php?dest=/admin/only.php.

这看起来像:

header("HTTP/1.0 404 Not Found");
header("Location: /login.php?dest=" . $_SERVER['PHP_SELF']);

在 php.ini 中。

于 2010-03-25T22:28:42.670 回答