Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Смена адресов страниц

Тема в разделе "Аудиты сайтов - оценка функционала, юзабилити", создана пользователем Sergey24, 8 мар 2016.

08.03.16 в 20:19
09.03.16 в 11:35
3
2.300
0
  1. TopicStarter Overlay
    Sergey24

    Sergey24 Новичок

    Регистрация:
    8 ноя 2015
    Сообщения:
    39
    Лучших ответов:
    0
    Рейтинги:
    +1 / 0 / -0
    Здравствуйте! Как наиболее правильно перебраться с адресов типа site.ru/films.php?f=10324 на site.ru/films/10324.html . В файле .htaccess настроил:
    RewriteEngine On
    RewriteRule ^films/([^/]*)\.html$ /films.php?f=$1 [L] .
    Еще наверное обычное перенаправление на странице films.php сделать?
     
  2. TopicStarter Overlay
    Sergey24

    Sergey24 Новичок

    Регистрация:
    8 ноя 2015
    Сообщения:
    39
    Лучших ответов:
    0
    Рейтинги:
    +1 / 0 / -0
    Подскажите, пожалуйста, регулярное выражение для редиректа в .htaccess: Redirect 301 /films.php?f=16 http://site.ru/films/16.html
    Чтобы не прописывать сотни одинаковых строк с разным параметром f.
     
  3. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.295
    Лучших ответов:
    54
    Рейтинги:
    +5.206 / 74 / -0
    Тестить негде, но по манам должен помочь такой код:
    Код:
    RewriteRule ^(.*)/films.php?f=(.*)$ $1/films/$2.html [R=301,L]
    Ну и естественно что этот код должен стоять после
    Код:
    RewriteEngine On
    :)
     
  4. TopicStarter Overlay
    Sergey24

    Sergey24 Новичок

    Регистрация:
    8 ноя 2015
    Сообщения:
    39
    Лучших ответов:
    0
    Рейтинги:
    +1 / 0 / -0
    Спасибо! Разобрался. Вот рабочий код:

    # адрес к виду .html films
    RewriteEngine On
    RewriteRule ^films/([^/]*)\.html$ /films.php?f=$1 [L] // Это я так понял просто преобразование динамических url в статические
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /films\.php\?f=([^&]+)\ HTTP/ // а это уже редирект с динамических на статические.. чтобы поисковики правильно поняли, где настоящий адрес
    RewriteRule ^films\.php$ http://site.ru/films/%1.html? [R=301,L]
     
Яндекс.Метрика