我有一个(Bootstrap)站点,具有顶级htaccess / htpasswd保护 . 这很好,但我现在想添加一个新的菜单项,这需要一个不同的(管理员)密码 .

我的计划A是让新的管理员菜单显示单个'login'项目 . 单击登录项时,将加载admin目录中的页面 . admin目录包含第二个 .htaccess ,当前包含

<Limit GET>
require user admin
</Limit>

但是,这不起作用,至少有两个原因:

(1)如果用户最初以 foo 登录,然后单击登录菜单项,则Apache不提供让用户再次登录为 admin - 错误日志只是说

access to /foo/admin/admin.html failed, reason: user 'foo' does not meet 'require'ments for user/valid-user to be allowed access

有没有办法强制出现密码对话框?

(2)我的顶级 index.html 目前正在执行管理页面的虚拟包含:

<div id="siteAdminDiv" class="container" style="display:none">
  <!--#include virtual="admin/admin.html" -->
</div>

这不起作用(不出所料),因为Apache试图在初始站点加载时加载页面,并且加载失败,因为用户刚刚输入了用户级而不是管理员密码 . 我知道如何仅在需要时加载此页面,例如,它不会重定向,并且适合现有的Bootstrap结构?

谢谢 .