多域多商店设置的部分 http 身份验证

partial http auth on multidomain multi store setup

我在多商店设置中有两个域指向同一个文件库(商店)。假设我有这些网址:

www.first-shop.xyz

www.second-shop.xyz

现在我需要用密码保护第二个 shop.xyz 而不影响另一个。是否可以在 htaccess 中设置条件验证?

无法在 .htaccess-File.

中进行管理

但是可以用 PHP-HTTP-Auth 来完成。

因此可以根据所需域检查 $_SERVER['SERVER_NAME'],然后 return header 401 如果 $_SERVER['PHP_AUTH_USER']$_SERVER['PHP_AUTH_PW'] 与凭据不匹配.

如果这两个身份验证变量在填写提示后保持为空,您将需要一个 .htaccess 重写规则:

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authori
zation}]

获取环境变量中的 auth 变量并将它们分配给上述变量:

list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']) = explode(':' , base64_decode(substr($_SERVER['HTTP_AUTHORIZATION'], 6)));