У меня есть домен www.domain.com
и у меня есть пользователи, которые создают на нем профили с именем пользователя. Я создал механизм для доступа к их общедоступному профилю как www.domain.com/username
используя htaccess и некоторый код в файле index.php.
Мой файл.htaccess выглядит так:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L,QSA]
Дополнительной особенностью является то, что пользователи могут выбрать дизайн (1-й или 2-й дизайн) для своего профиля. Поэтому я храню выбранный проект в базе данных и перенаправляю www.domain.com/username
на www.domain.com/1/
или www.domain.com/2/
и загружаю профиль пользователей по этому URL-адресу. Логика для PHP в
//Load profile of user
$requestURI = $_SERVER['REQUEST_URI'];
$parameterArray = explode('/', $requestURI);
$username = $parameterArray[1];
if($username != "")
{
//Get chosen design from database and store it in a variable
$chosenDesign = *Selected design value*;
header("Location: $chosenDesign/");
}
else
{
//Username not found, hence redirect to error page
header("Location: 404.html");
}
Моя проблема в том, как я могу перенаправить таким образом, чтобы URL-адрес всегда был www.domain.com/username
и он загружает дизайн в фоновом режиме (логически) и отображает его.
Невозможно скрыть информацию в видимой ссылке. Вы можете использовать такую ссылку:
www.domain.com/username-1
перенаправить на → www.domain.com/page.php?user=username&design=1
Для такого рода вещей я использую файлы cookie...