Это сообщение об ошибке довольно универсально, и может указать на одну из многих ошибок. Существует хорошая статья блога здесь, которая перечисляет много потенциальных причин и решений.
Зависит, как у Вас есть своя структура каталогов (что такое Ваш VirtualDocumentRoot
быть похожими?), но это - вероятно, хорошая ситуация для .htaccess
файл в выглядящем примерно так каталоге сайта:
AuthType Basic
AuthName "bar.foo.com"
AuthUserFile /var/www/bar.foo.com/.htpasswd
Require valid-user
Настройте .htpasswd файл:
htpasswd -c /var/www/bar.foo.com/.htpasswd username1
htpasswd /var/www/bar.foo.com/.htpasswd username2
...
Если возможно, зашифруйте этот трафик, также. Основной автор отправляется через HTTP в открытом тексте, таким образом, это - хорошая идея зашифровать его с SSL.
У меня была такая же проблема, и я решил ее только сейчас.
Предположим, у вас есть два VirtualHosts «open.example.com» и «resticted.example.com» с общим документом Корень "/ путь / к / вашему / веб-корню". Вы не хотите, чтобы люди могли получить доступ к open.example.com без пароля, но требуя пароль для rested.example.com. Тогда ваша конфигурация будет следующей:
<Directory /path/to/your/web-root>
Order Deny,Allow
Deny From All
SetEnvIf Host open.example.com allowed
Allow from env=allowed
AuthType Basic
AuthName "Won't let you in, if you don't tell me your name and password"
AuthUserFile /etc/apache2/htusers
Require valid-user
Satisfy Any
</Directory>