shour_short
Новичок
Добрый день. Ребят такой вопрос. Хочу на сайт прикрутить ЧПУ. Сейчас на сайте ссылки такого плана http://site.ru/full_text.php?&id=52&hid=16&pid=3, http://site.ru/full_text.php?&id=52&pid=3, http://site.ru/full_text.php?&id=3. Причем этими параметрами get у меня также передаются активные пункты меню сайта. Хочу, чтоб ссылки были плана http://site.ru/new/subnews/news_1. Как это сделать вообще не могу понять - подрубил файл .htaccess, в который написал
Файл .htaccess
# Включаем mod_rewrite
RewriteEngine on
# Устанавливаем core.php индексным файлом
DirectoryIndex index.php
# Если файл физически не найден
RewriteCond %{REQUEST_FILENAME} !-s
# то направим на core.php с параметрами URI
RewriteRule ^(.+)$ /index.php?$1 [L]
а в index.php дописал:
Вот собственно такая штука. За раннее благодарен)
Файл .htaccess
# Включаем mod_rewrite
RewriteEngine on
# Устанавливаем core.php индексным файлом
DirectoryIndex index.php
# Если файл физически не найден
RewriteCond %{REQUEST_FILENAME} !-s
# то направим на core.php с параметрами URI
RewriteRule ^(.+)$ /index.php?$1 [L]
а в index.php дописал:
PHP:
// Получаем текущий полный URL
$url = parse_url("http://".$_SERVER["HTTP_HOST"].$_SERVER['REQUEST_URI']);
// Распетрушиваем путь на «папки»
$dirs = explode('/', $url['path']);
// Парсим переменные GET в глобальный массив $_GET
isset($url['query']) && parse_str($url['query'], $_GET);
// Декодируем в UTF-8 все символы, отличные от латиницы
for ($i=1; $i<(count($dirs)-1); $i++) {
$dirs[$i]=urldecode($dirs[$i]);
}