Здравствуйте, дорогие разработчики и sa,
У меня есть очень специфическая проблема, с которой я никогда не сталкивался за все годы разработки и управления сервером.
У меня есть 1 доменное имя, которое я используюназовем его example.com.
Для этого я настроил два разных vhosts.
- example.com
dev.example.com
<VirtualHost x.x.x.x:443>
ServerAdmin admin@gmail.com
DocumentRoot /home/user/example
ServerName example.com
ServerAlias www.example.com
SSLEngine on
SSLCertificateFile ..../certificate.crt
SSLCertificateKeyFile ..../certificate.key
SSLCertificateChainFile ..../cabundle.crt
</VirtualHost>
<VirtualHost x.x.x.x:443>
ServerAdmin admin@gmail.com
DocumentRoot /home/user/dev_example
ServerName dev.example.com
ServerAlias dev.example.com
SSLEngine on
SSLCertificateFile ..../certificate.crt
SSLCertificateKeyFile ..../certificate.key
SSLCertificateChainFile ..../cabundle.crt
</VirtualHost>
Все это работает довольно хорошо, однако я хотел бы ограничить пользователей от простого доступа к узлу dev с помощью модуля аутентификации.
AuthType Basic
AuthName "Development"
AuthUserFile /home/user/.htpasswd
Require valid-user
Сама аутентификация работает.Но сейчас возникает проблема!часть аутентификации для dev vhost запрашивает учетные данные на другом vhost, что не имеет никакого смысла вообще ... Я пытался поместить части аутентификации в разные места, такие как Directory и Location, но результат всегда один и тот же ... Iустал от этого и решил поместить его в файл .htaccess ... НО он по-прежнему запрашивает аутентификацию в другом домене, который даже не читает файл .htaccess на этом vhost.
Short:
- Есть два vhosts (A & B)
- Требуется аутентификация на B
- Настройка аутентификации на B
- Браузер запрашивает аутентификацию на A (дажеесли я помещу код авторизации в файл .htaccess B, который не должен читаться даже при переходе к A).
Надеюсь, кто-то понимает это странное поведение, потому что я не могу понять, что не так.Если я просто комментирую части аутентификации в файле .htaccess, он не запрашивает учетные данные для обоих vhosts, что и следовало ожидать.