对于我们的帮助台,我们为活动目录用户使用带有 Kerberos SSO 的 GLPI 包。
现在,如果有人没有有效的 kerberos 票证,我们会将他们重定向到另一个域的 GLPI 登录页面。
SSO 域是 servicedesk.domain,非 SSO 域是 sd.domain
我们的用户会收到这样的链接,其中“重定向”指向特定的票证:
https://servicedesk.domain/index.php?redirect=ticket_20600_Ticket
在 Apache 中的 SSO 虚拟主机定义中,我们使用以下方式重定向无效连接:
ErrorDocument 401 "<html><meta http-equiv=\"refresh\" content=\"0;url=https://sd.domain\"></html>"
不幸的是,这会删除 URL 的剩余部分,这意味着用户在手动验证后会被发送到网站的主页,而不是正确的票证。
有没有办法可以动态重定向到类似这样的内容?
答案1
因此,回答这个问题似乎可以采用以下方法
ErrorDocuemt 401 /path/to/my401.cgi
然后使用 CGI 查找引用者。回答你的另一个问题时,我根本不会使用重写规则来执行此操作。只需添加一个 http vhost
<VirtualHost *:80>
# The Server name in both directives should be the same as your https vhost
ServerName example.com
Redirect permanent / https://example.com/
</Virtualhost>