Категории без html, а сами материалы с html

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем matrixid, 16 июн 2014.

  1. matrixid

    matrixid Нарушитель

    Регистр.:
    6 ноя 2013
    Сообщения:
    250
    Симпатии:
    279
    Сейчас материал:
    http://домен.ru/категория/конечный-материал
    Сейчас категория:
    http://домен.ru/категория
    Ну и собственно главная:
    http://домен.ru
    Требуется адреса категорий и главной не трогать, а каждому адресу материала добавить расширение .html

    Добавил правило в .htaccess:
    RewriteCond %{REQUEST_URI} !(\.html)$ [NC]
    RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1.html [NS,L,R=301]
    если ссылка закончилась просто текстом (без слеша) на конце, то добавить .html
    Получил проблему, что главная тоже получается вида /.html
    Как решить данную проблему?
     
    Последнее редактирование: 16 июн 2014
  2. UJy

    UJy

    Регистр.:
    23 авг 2011
    Сообщения:
    320
    Симпатии:
    116
    Если править твое правило, то так:
    Код:
    RewriteCond %{REQUEST_URI} category/.* [NC]
    RewriteCond %{REQUEST_URI} !(\.html)$ [NC]
    RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1.html [NS,L,R=301]
    
    Или так:
    Код:
    RewriteCond %{REQUEST_URI} category/.* [NC]
    RewriteCond %{REQUEST_URI} !(\.html)$ [NC]
    RewriteRule (category/.*) /$1.html [R=301,L]