我在一个带有不同端口(444,445)的系统上安装了Apache 1.3和Apache 2.2。 我使用444的Apache身份validation信息。 当我想从端口444到445,浏览器再次问我用户/密码。 我想分享两个Apache之间的会话身份validation信息。 这意味着,如果我input444的密码,它不会再要求我的密码,并使用444会话。 我用下面的.htaccess文件夹的第二个Apache(444):
AuthName "Restricted" AuthType Basic AuthUserFile /var/Apache444/users AuthGroupFile /etc/Apache444/groups require group admin
我认为浏览器将识别server:444和server:445作为两个不同的服务器,不会发送身份validation凭据。
检查您的HTTP请求标头,如下所示:
Authorization:Basic HERESOMEBASE64ENCODEDCHARS=
通常,浏览器会在每个请求中发送这个用户名和密码,服务器会检查每个请求的凭证的有效性(纯文本,只是base64编码,所以是的,只能在完美世界中使用SSL)。 重要的部分是会话不在服务器端pipe理, 没有会话 。
这意味着浏览器将这些证书存储在caching中,并在向同一服务器发出请求时自动决定添加这些证书。
如果浏览器没有看到你的两个Apache服务器,在两个端口上,作为同一台服务器,它永远不会发送凭证…从来没有。