Форум программистов, компьютерный форум, киберфорум
Apache, htaccess
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 23.02.2013
Сообщений: 4
1

Базовая авторизация для всех поддоменов

26.02.2013, 05:00. Просмотров 2702. Ответов 2
Метки нет (Все метки)

Приветствую. Не смог найти ответ на такой вопрос: нужно закрыть базовой авторизацией все поддомены, на которых будут демонстрироваться разрабатываемые сайты клиентам.

На сервере есть домен site.ru. Периодически будем добавлять поддомены pdd1.site.ru, pdd2.site.ru и т.д., указывающие на отдельные папки, т.е. это будут отдельные сайты.

Самое простое решение - это руками добавлять AuthType Basic в .htaccess для каждого сайта. Но программист может забывать это делать, или случайно затирать .htaccess. В общем, человеческий фактор: если кто-нибудь может забыть закрыть сайт базовой авторизацией, то рано или поздно забудет

Отсюда вытекает второе костыльное решение - написать скрипт, который будет обходить все поддомены и вносить изменения в .htaccess. Но это решение усложняет систему, а любое усложнение влечёт за собой повышение риска ошибок.

Можно ли придумать более простой вариант? Возможно в Apache есть некая фича, которая позволяет в конфиге прописать какое-нибудь правило, применяющее базовую авторизацию для доменов по маске? Что можно сделать?

Заранее благодарю за любые идеи и наводки.

Добавлено через 2 часа 12 минут
Ищу ответ на вопрос и в других сообществах:
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.02.2013, 05:00
Ответы с готовыми решениями:

Как сделать редиректы со всех поддоменов?
Здравствуйте всем! Хотели бы чтобы все адреса типа такого перенаправлялись на новый адрес ...

ServerAlias для поддоменов
Приветствую! У меня ОС Убунту 16.04 и веб сервер Apache2. Есть проект на PHP Laravel и нужно...

Универсальный htaccess для поддоменов?
Мне нужно чтобы с поддоменов перенаправлялось в папку, сейчас сделано вот так RewriteEngine On ...

Настройка виртуального хоста для поддоменов в Apache
Структура каталогов такая: /var/www/test.ru /var/www/test.ru/httpd /var/www/test.ru/поддомен1 ...

2
886 / 352 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
26.02.2013, 16:54 2
shoman, Можно попробовать VirtualDocumentRoot... Сейчас дам код

Добавлено через 45 минут
shoman, Ну, вот, только пути замените:
Код
<VirtualHost *:80>
    VirtualDocumentRoot /var/www/demos/%1
    AuthType Basic
</VirtualHost>
В данном примере сайты идут по таком пути:
Код
/var/www/demos/pdd1
/var/www/demos/pdd2
И т. д.
ВНИМНИЕ!!! Лучше в той же папке не кладите главный сайт иначе может быть конфликт
Можно класть на каталог выше (т. е. /var/www в моём примере)
В таком случае новые поддомены будут добавляться без перезагрузки апача и автоматически, так как VirtualHost (в нём настройку AuthType Basic я подставил) один и тот же используется .htaccess с AuthType Basic не нужен!!!
Как вам такой вариант?
Очень автоматизированный!!!
Сам пользуюсь!
1
0 / 0 / 0
Регистрация: 23.02.2013
Сообщений: 4
21.03.2013, 09:05  [ТС] 3
Илья, спасибо за ответ. Пытался применить этот способ но в нашей конфигурации не получилось. Мы используем панель ISPManager и конфиги вручную не редактируем: все настройки делаем через панель.

Ваш способ натолкнул на мысли и помог найти другой стандартный апачевский способ:
Код
<Directory ~ "/home/[^/]+/data/www/[^/]+\.site\.ru">
    AuthType Basic
    AuthName "Subdomain authorization"
    AuthUserFile "/home/.htpasswd"
    Require valid-user
</Directory>
Можно было ещё сделать через директиву DirectoryMatch

Спасибо.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.03.2013, 09:05

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Поставить cookies для всех поддоменов (Awesomium)
Как поставить cookies для всех поддоменов? Что то типо этого (Выдает ошибку, ...deleted...)...

Базовая авторизация через xNet
Всем привет! Мне необходимо сделать Basic авторизацию. Вот код using(var...

Авторизация пользователя для всех страниц сайта
Проблема такая: пользователь авторизируется на одной из страниц сайта. как мне сделать так,чтобы...

Проблемы с переходом БП 1.6(базовая) - БП 2.0 (базовая)
Перевожу БП 1.6.(базовая) - БП 2.0 (базовая) с помощью помощника выгружаю данные из БП...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.