使用 PHP 文件的 Apache 身份验证

使用 PHP 文件的 Apache 身份验证

是否可以使用 PHP 文件在 Apache(或例如 Nginx/HAProxy/etc)中进行身份验证?我想要的是以下内容:

  1. 用户访问门户(index.php)。
  2. Apache 将查看 index.php 是否给出 HTTP 状态代码 200 OK 或 401 Unauthorized(PHP 文件检查用户是否已登录并发送自定义标头)。
  3. 当返回 200 OK 时,用户可以进入门户。如果 index.php 给出 401 HTTP 状态代码,则用户需要登录。

所有操作都需要在 index.php 文件内进行,并且需要在 Apache 层运行。

我编写的 PHP 文件中的身份验证过程完全符合我的需要,但现在我想以某种方式将其与 Apache 连接起来。希望我的解释清楚。

我想要这个是因为以下原因:我建立了一个门户来访问一些应用程序(Owncloud、Munin、Wiki、Shell in a Box)。这个门户是一个代理服务器,当你访问例如 www.example.com/owncloud 时,你会被代理到 Owncloud 服务器/容器。目前我有一个 htpasswd 解决方案,但我想要一个自定义身份验证页面(以控制身份验证过程)。

相关内容