PINTAGON, все запросы вида /@name нужно перенаправлять в определенный метод, в котором искать в базе пользователя и отображать страницу профиля. Обычно делают скрипт-фасад, который принимает все запросы к сайту. Внутри него уже идет разбор uri и перенаправление на нужный метод (это называется роутинг)
PINTAGON, а вы уверены что у вас хватит знаний делать уникальные name так, чтобы это в будущем не тормозило весь сайт? индексация и поиск по varchar не лучшая идея так то, а ведь site.ru/@имя это именно поиск и индексация по varchar
1. Уникальный ключ на столбец в базе (Вы же не указали что у вас за база)
2. Валидация на этапе сохранения username
3. Если username не указан, можно использовать PrimaryKey в качестве него.