Выполнить то, что вы хотите достичь, трудно, если не сказать больше.Для анализа входящих запросов требуется дополнительный файл PHP, потому что .htaccess не может определить, является ли часть URL-адреса USERNAME фактически именем пользователя или нет.
Файл PHP, который я упомянул, будет загружать таблицу пользователей избазу данных и сравните $ _GET ['profile'] с записями и, при совпадении, переписайте в /? profile = USERNAME
Если совпадений нет, он просто переходит к index.php.
Однако, здесь есть гораздо более простое решение, которое сохраняет многое из того, что вы хотите:
RewriteRule ^profile/([^/]+)$ ?profile=$1 [L]
Для этого нужно переписать из / profile / username в /? Profile = username
Это не совсем то, что вы ищете, но гораздо проще в реализации.Правило должно идти прямо под RewriteRule ^index\.php$ - [L]
в файле .htaccess.
Если у вас есть какие-либо вопросы, я с радостью объясню, что здесь происходит.