Для использования с Nginx, обратитесь к этому ответу https://stackoverflow.com/a/53415110/6749661
Есть несколько способов сделать это, например, ответ @ MRustamzade, вы можете изменить файл .htaccess, чтобы он содержал такой код:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]*)$ /user.php?username=$1 [L] //update user.php?username to your users profile route.
Вы также можете использовать структуру маршрутизатора, такую как Altorouter , которая позволяет вам делать это, и с большим количеством страниц.
С Altorouter вы можетеустановить ряд правил маршрутизации, простая установка может состоять из:
$router = new AltoRouter();
$router->map( 'GET', '/profile/[*:username]', 'views/profile_view.php', 'home' );
$match = $router->match();
if($match) {
header("HTTP/1.1 200 OK");
require $match['target'];
} else {
header("HTTP/1.0 404 Not Found");
echo "Error 404 - File not found";
}
Использование этого кода позволит вам перейти к site.com/profle/username
перейдет к views/profile_view.php
Для того, чтобыполучить имя пользователя из URL в PHP, вы можете использовать переменную $ match, что-то вроде этого:
$username = $match["params"]["username"];