Здравствуйте, давно заметил, что в соц. сетях вместо id в ссылке, человек может выбрать слово. Ну вот например:
vk.com/id1123123 - было
vk.com/lopatin - стало
Собственно как это организовать?
Я понимаю, что можно просто в переменную id записывать слово и искать потом пользователя по этому слову, но тут тоже есть проблема:
1. Я могу сделать текстовую ссылку, но не красивую вот так: mysite.ru/id=lopatin
То есть, как видно все-равно остается часть букв, которую нужно убрать из ссылки.
2. Окей, допустим я сделаю "красивые ссылки" такого вида: mysite.ru/lopatin
Но тут опять проблема, я же в БД буду искать в таблице user человека с такой ссылкой, но... а если это, например, не ссылка не пользователя, а группы, ну вот например, как ВК группа есть: vk.com/mdk
Эта ссылка ведет не на страницу пользователя, а на группу. То есть по логике: код с начало должен пройтись по всем пользователями в БД с юзерами, чтобы убедиться, что такой ссылки неукого нет, потом он идет в другую БД с группами и уже там... Это же ведь долго.... А если таких страниц миллионы...
Согласитесь, если бы ссылка была такого вида: mysite.ru/group=mdk машине было бы понятно, что эту группу надо искать только в БД с группами и если она там ее не найдет, то ссылка не верна, и уже в других БД искать ее не надо... Но опять же, такие ссылки не красивые...
Ну вообщем-то расскажите, как все это работает? Ведь если представить, ВК, например. десятки миллионов страниц, неужели после постоянно загрузки страницы машина по всей БД слово сразу во всех БД...?