ЧПУ с помощью .htaccess

Jarerd
На сайте с 08.03.2012
Offline
96
1261

Возникла проблема с созданием ЧПУ ссылок, с помощью .htaccess

Вроди все просто, но не пойму где косяк:

Url: http://site.com/news.php?page=3

хочу чтобы отрабатывало на http://site.com/news

Соответственно в .htaccess, прописываю код:

RewriteRule ^news/([0-9]+)/? news.php?page=3 [L]

...но не отрабатывает код.. Подскажите где косяк?

webiumpro
На сайте с 20.03.2017
Offline
39
#1

У вас сначала должен идти шаблон регулярки, а потом рерайт, а не наоборот.

Копирование лендингов. Разработка на фреймворке сервисов. Создание сайтов (/ru/forum/994418)
M
На сайте с 04.12.2013
Offline
223
#2

Jarerd, объясните, что такое page=3. Если вы что-то берете в регулярке в скобки (перечисления в расчет не беру), предполагается, что в подстановке должно быть что-то вроде $1 и т.п.

Да и использование одних путей за место GET-параметров не делает ваши ссылки автоматически ЧПУ. Всякие непонятные циферки в путях – это не ЧПУ. Для новостей, если эти циферки как-то обозначают дату появления новости, их еще можно назвать элементами ЧПУ, иначе – навряд ли. В ЧПУ используются слаги и вполне понятные для пользователя числа (например, ?page=3 пользователь обычно понимает, как третью страницу списка, и если это действительно так, то /news?page=3 – вполне себе ЧПУ). Трансляция слагов в числовые идентификаторы обычно выполняется не в .htaccess (для ограниченного достаточно постоянного числа элементов, например разделов сайта, такую трансляцию еще можно сделать средствами Web-сервера, а вот, например, для новостных статей – нет).

Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
S
На сайте с 30.09.2016
Offline
469
#3
Jarerd:
не отрабатывает код

И как это выглядит? Ошибка 404?

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий