Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите написать правильный RewriteRule для чпу
 
 автор: TetRiska   (22.08.2014 в 14:25)   письмо автору
 
 

Всем привет! Нуждаюсь в помощи по правильному построению RewriteRule под мою задачу.

С нашим СЕОшнком пришли к такому варианту урл-ов - будут разделы с постраничкой и конкретные странички. Стремимся к минимизации уровней вложености для лучшего распределения веса, да и самому посетителю будет понятней.

Пример урл-ов:
http://site.com/spectehnika-d30/ //раздел направления, где: spectehnika - урл направления; d - идентификатор, что это направление; 30 - ид направления
http://site.com/spectehnika-d30/?page=2 //вторая страничка раздела направления

http://site.com/news/ //раздел новостей
http://site.com/news/?page=2 //вторая страничка раздела новостей
http://site.com/motocikl-25-kubikov-vishel-v-mir-n545335.html //конкретная страничка новости, где: motocikl-25-kubikov-vishel-v-mir - урл новости; n - идентификатор, что это новость; 545335 - ид новости

http://site.com/contacts.html //конкретная страничка контактов


Пробую писать RewriteRule, получилось такое:
RewriteEngine on
RewriteRule ^(.*)(\.html|/)$ index.php?data=$1 [L]


1. Открывает урл с окончанием / и .html
2. Получается, что можно открыть /news/ и /news.html, а этого допустить нельзя
3. Еще нужно позаботится о таких моментах:
- если введут случайно такой урл - /news, автоматом доставляем / через 301 редирект
- если введут случайно такой урл - /contacts, автоматом доставляем .html через 301 редирект
4. Также не пойму как получить постраничку в данном исполнении урл, $_GET не видит

Буду признателен за любую помощь.

  Ответить  
 
 автор: kosta_in_net   (16.09.2014 в 19:39)   письмо автору
 
   для: TetRiska   (22.08.2014 в 14:25)
 

Не проще ли все перенаправить на пхп?
RewriteRule .* /index.php [NS,L]
а уж внутри пхп быстрее проанализирует запрошенный адрес.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования