我有一台 Ubuntu 20.04 LTS 服务器,它有一组虚拟主机配置,使用基本身份验证保护一组子域,例如,假设 secure.example.com 受密码保护,并且www.secure.example.com、sub.secure.example.com 和www.sub.secure.example.com然而我的问题是,每次你更改子域名时,它都会要求你重新进行身份验证,例如如果你从 secure.example.com 转到www.secure.example.com它会要求您重新进行身份验证,这是不希望的,我该如何使身份验证对某一组子域有效,以便您只需对这一组子域进行一次身份验证?
VirtualHost 配置示例:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName secure.example.com
ServerAlias www.secure.example.com
DocumentRoot /var/www/secure.example.com/public_html
<Directory /var/www/secure.example.com/public_html/>
AuthName "Restricted Content"
AuthType Basic
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
Options Indexes FollowSymLinks
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
答案1
基本身份验证会在每次请求时传递密码。允许浏览器重复使用输入的密码来处理不同的主机将带来巨大的安全风险。
所以不,这是不可能的。