Отображать профиль пользователя как site.com/user1 - PullRequest
0 голосов
/ 06 февраля 2019

Я хочу создать простую социальную сеть с PHP, чтобы у каждого пользователя был профиль, который делится его изображением и текстом.

У меня есть проблема, я хочу добавить функциональность, в которой пользователи получат доступ кего профиль, как Facebook, Instagram и т. д., как показано ниже:

my website.com/user1

Не это: mywebsite.com/@user1

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Для использования с 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"];
0 голосов
/ 06 февраля 2019

Создайте .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.

Если у вас есть какие-либо вопросы о .htaccess файле, пожалуйста, проверьте эту ссылку .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...