多域多存储设置上的部分http身份验证

时间:2016-09-15 07:44:07

标签: .htaccess http-authentication

我有两个域在多商店设置上导致相同的文件库(商店)。假设我有这些网址:

www.first-shop.xyz

www.second-shop.xyz

现在我需要密码保护second-shop.xyz而不影响另一个。是否有可能在htaccess中设置条件auth?

1 个答案:

答案 0 :(得分:0)

没有办法在.htaccess-File中管理它。

但可以使用PHP-HTTP-Auth完成。

因此,如果$_SERVER['SERVER_NAME']$_SERVER['PHP_AUTH_USER']与凭据不匹配,则可以针对所需的域检查$_SERVER['PHP_AUTH_PW'],然后返回标头401。

如果填写完提示后这两个auth vars保持空白,则需要.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)));