Прежде всего, это не просто перенаправление. Я пытаюсь понять структуру имени пользователя Facebook полностью. Так что не говорите мне использовать htaccess, я это уже знаю.
facebook.com/profile.php?id = username
facebook.com/profile.php?id = id
facebook.com/username
facebook.com/id
Эти URL делают то же самое и перенаправляют вас на
facebook.com/username
Если пользователь пытается использовать идентификатор пользователя, он проверяет идентификатор пользователя из db, выбирает имя пользователя и перенаправляет пользователя на facebook.com/username.
.
Пока все хорошо.
Все пользовательские действия сохраняются в БД с идентификатором пользователя, но при печати данных ссылки превращаются в имена пользователей. Таким образом, они должны получать данные об имени пользователя при каждом запросе. И при обработке данных имена пользователей превращаются в идентификаторы пользователей. Наконец, если пользователь не установил имя пользователя, идентификатор пользователя все еще работает.
Это то, что я понимаю до сих пор. Вот мои вопросы.
- Как хранить имена пользователей в БД?
- Я думаю, что эта структура вызовет много проблем с производительностью для моих запросов. Будет ли это?
- Это требует много изменений в работающей системе. Как вы думаете, есть ли простой способ сделать это? (Что-то вроде обнаружения и перенаправления идентификаторов на страницу php, которая превращает их в имя пользователя)
- Обработка пользователей, у которых нет имен пользователей, кажется мне большой проблемой. Как это побороть?
Обновление:
- Как определить, что следующий URL содержит идентификатор пользователя или имя пользователя?
Спасибо!