如果它是基于 Windows 的 Intranet,我不会使用 Javascript,而是使用默认的 NTLM-Authentication,如该线程中所述。这样,您可以使用网络用户的正常用户名和密码为任意数量的站点提供单点登录。从另一个线程引用我的答案:
NTLM 身份验证实际上是可能的。您需要AuthenNTLM -plugin,它将使用 Internet Explorer 对用户进行身份验证。一个示例语法是
<Location />
PerlAuthenHandler Apache::AuthenNTLM
AuthType ntlm,basic
AuthName test
require valid-user
# domain pdc bdc
PerlAddVar ntdomain "name_domain1 name_of_pdc1"
PerlAddVar ntdomain "other_domain pdc_for_domain bdc_for_domain"
PerlSetVar defaultdomain wingr1
PerlSetVar ntlmdebug 1
</Location>
## taken from the documentation
有关设置的更多选项和具体说明,请参阅模块文档- 以上内容应该让您朝着正确的方向开始。
在客户端,Internet Explorer 和 Firefox 应该能够在一些配置后自动登录(Firefox 需要特别注意- 这可以通过在部署期间设置配置变量来实现)。