1 пользователь = 1 поддомен (теория)

snark

Новичок
1 пользователь = 1 поддомен (теория)

Решил предоставлять доступ пользователям к своим площадкам через поддомены, где име поддомена равно его логину. Соответственно для каждого пользователя также выделяется персональная БД (он, конечно, об этом не знает). Для входа, ему достаточно будет перейти по адресу: login.site.ru и ввести свой пароль. Так вот, в соответствии с этим у меня возникли некоторые трудности в реализации:

1. Как сделать так, чтобы все поддомены ссылались на основной сайт (не редирект, а имеено шли на site.ru, но адрес оставался)? Чтобы я в дальнейшем с помощью .htaccess и rewrite строил собственный URL.

2. Существует ли более лучший способ проверки существования БД, нежели проверки наличия в списке всех БД возвращаемом функцией mysql_list_dbs() ?

3. Rewrite будете переделывать запрос login.site.ru на site.ru/areas/index.php?area=login , и после ввода пароля, параметр area будет сохранятся в переменной сессии, которая будет указывать с какой БД работать. Вот меня это, как-то беспокоит, правильно ли это, а именно сохранение имени БД (аля логин) в сессии... слышал, что можно изменить (неведомым мне способом) значения этих переменных и как результат получить доступ к чужой площадке.

4. Смена авторизованным пользователем адресы с login.site.ru, допустим на login2.site.ru, будет контролироваться переменной сессии, которая хранит логин пользователя, и если они не совпадут, опять выдаст форму авторизации...

Спасибо!
 

Dovg

Продвинутый новичок
1. В поиске точно есть
2. надо ли заводить по бд на пользователя?
3.
4.

А потом у тебя заведутся пользователи с именами www ns mail и т.д. :)

ps. посмотри на хабрахабр, в плане авторизации и т.д.
 

Spree

Новичок
Можно поинтересоваться, зачем вам это нужно? Почему не подходит такой вариант: http://site.ru/users/Spree/, например? Один домен, всё очень удобненько и красиво
 

dimagolov

Новичок
если домен и веб-сервер принимает шаблон *, то ничего не стоит сделать просто напросто переадресацию на нужный суб-домен после регистрации, который потом будет выполнять чисто декоративные ф-ии, так как данные авторизации будут в сессии и их просто надо будет сверять с именем субдомена в $_SERVER['HTTP_HOST']. Ссылки же формировать исключительно относительные, во избежание ненужных приседаний на php (их прекрасно формирует сам броузер на клиенте)
 

snark

Новичок
Spree, думаю, что narod.ru не просто так выбрал вариант с сабдоменами, а не с папками. Сабддомен выглядит как-то персональней что-ли, нежели папка на основном домене...
 

kode

never knows best
Re: 1 пользователь = 1 поддомен (теория)

1) Зависити от архитектуры сайта
2) А зачем? Как вариант вести табличку соответвий в "основной" БД
3) Храните в сессии логин и пароль, проверяйте каждый раз
4) да, смотрите выше
 

Spree

Новичок
snark, зависит от того, что ты хочешь делать. Если хостинг, как народ.ру раздавать, то тогда, возможно, так и будет лучше. А если просто профиль пользователя, как на хабре, тогда, мне кажется, разницы никакой нету
 
Сверху