Задать вопрос
Jumast
@Jumast
разработка сайтов - html/css/php/js

Как правильно сделать роутинг в htaccess?

Всем привет!
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
RewriteRule ^users(.+)$ index.php?url=users&page=$1 [QSA,L]

Как правильно реализовать чпу в htaccess
1 - /index.php
2 - /index.php?url=about
3 - /index.php?url=users&page=profile

1 - /
2 - /about
3 - /users/profile

---- index.php
define('SKYLIGHT',dirname(__FILE__));

# Шапка
include('inc/head.php');

$url = $_GET['url']; // site.ru/url=название

if(isset($url)){ 
if(file_exists(dirname(__FILE__)."/pages/".$url.".php")){ 
include(dirname(__FILE__)."/pages/".$url.'.php'); // Ищем файл в директории
}else{ 
include(dirname(__FILE__).'/pages/404.php'); // Страница 404
} 
}else{ 
include(dirname(__FILE__).'/pages/main.php'); // Главная страница
}

# Подвал
include('inc/foot.php');

---- /pages/users.php
include ('./inc/menu.php'); // Меню пользователя будет со всеми страницами в /pages/user/

$url2 = $_GET['page'];

if(isset($url2)){ 
if(file_exists(dirname(__FILE__)."/user/".$url2.".php")){ 
include(dirname(__FILE__)."/user/".$url2.'.php'); // Ищем страницы
}else{ 
include(dirname(__FILE__).'/404.php');
} 
}else{ 
include(dirname(__FILE__).'/user/acc.php'); // Профиль основная в /user/
}

Описание файлов
/index.php - инклудит директорию /pages
/pages/users.php - инклудит директорию /pages/user

Вот скрипт для наглядности: Яндекс.диск

--------------------------------------------
Просьба не советовать MVC.
  • Вопрос задан
  • 505 просмотров
Подписаться 3 Простой 19 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
xEpozZ
@xEpozZ
Веб-разработчик
Просьба не советовать MVC.

Советую погуглить. Ваши кейсы лет 20 уже существуют
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽