Помогите с редиректом в .htaccess

(Ответов: 17, Просмотров: 1406)
Страница 1 из 2 12 Последняя
  1. Новичок
    • Регистрация: 16.03.2014
    • Сообщений: 9
    • Репутация: 0
    Никак не могу сделать правильный 301 редирект в .htaccess.
    Задача: есть группа страниц www.site.ru/novosti/город ,где город - название городов на латинице. ЧПУ было организовано в .htaccess следующим образом:
    RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /city-news.php?city=$1 [L]

    Сейчас надо заменить novosti на news. Ссылки на сайте меняю на www.site.ru/news/город. И прописываю новое правило:
    RewriteRule ^news/([a-zA-Z0-9_-]+)$ /city-news.php?city=$1 [L]

    А чтобы всякие PR и внешние ссылки не пропали делаю таким образом:
    RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /news/$1 [L,R=301]

    И получается плохо - слетает ЧПУ напрочь! Поскольку возникает 301 редирект, то у пользователя в броузере уже не отображается ссылка www.site.ru/news/город а показывает www.site.ru/city-news.php?city=город
    Перепробовал кучу способов - никак нельзя убрать этот внешний редирект :-(
    Кто подскажет решение?
    • 0
  2. [web-developer] Аватар для cOAPerator
    • Регистрация: 22.02.2011
    • Сообщений: 615
    • Репутация: 111
    • Webmoney BL: ?
    Код:
    RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /news/$1 [R=301,L]
    RewriteRule ^news/([a-zA-Z0-9_-]+)$ city-news.php?city=$1 [L,QSA]
    так попробуйте
    Последний раз редактировалось cOAPerator; 16.03.2014 в 11:03.
    • 0
  3. Новичок
    • Регистрация: 16.03.2014
    • Сообщений: 9
    • Репутация: 0
    cOAPerator,
    попробовал, переадресация происходит, но в строке броузера после ввода www.site.ru/novosti/город пишет www.site.ru/city-news.php?city=город, а не www.site.ru/news/город. :-(
    То есть PR и все остальное пропадет.
    • 0
  4. Новичок
    • Регистрация: 16.03.2014
    • Сообщений: 9
    • Репутация: 0
    Тема все еще актуальная. Неужели это невозможно?! Такая простая с виду задача...
    • 0
  5. Дипломник Аватар для shkip3r
    • Регистрация: 01.11.2013
    • Сообщений: 100
    • Репутация: 25
    подскажите, а чем такой способ не устраивает?
    Redirect 301 /articles/novosti http://www.site.ru/articles/news
    • 0
  6. Новичок
    • Регистрация: 16.03.2014
    • Сообщений: 9
    • Репутация: 0
    shkip3r,
    У меня не просто /articles/novosti, а /articles/novosti/город. Например /articles/novosti/moscow/. И городов много, вручную не перечислишь. Это включенный ЧПУ.
    И в предложенном Вами примере регулярные выражения не применяются, поэтому все скопом не перенаправишь на /articles/news/город. Приходится применять mod_rewrite в .htaccess, у которого "глюк" если указал внешний редирект в начале, то он тянется до конца, как печать в паспорте :-(
    • 0
  7. Студент Аватар для GameAgregator
    • Регистрация: 17.11.2011
    • Сообщений: 89
    • Репутация: 12
    На фрилансерской бирже создали бы проект, вам бы за отзыв и символические $1-2 уже бы давно сделали )
    По-моему, это эффективней, чем неделю гадать. Хотя за неделю в правилах модреврайта уже можно было разобраться или хотя бы "методом тыка" найти нужный вариант :)
    GameAgregator.com - конверт гемблинг трафика со всего мира. Есть решения под Android и iOS.
    • 0
  8. Новичок
    • Регистрация: 16.03.2014
    • Сообщений: 9
    • Репутация: 0
    GameAgregator,
    За первый пункт спасибо, так и сделаю - не знал об этом. Было бы здорово, если бы и ссылку кинули на биржу.
    По второму пункту: уже разобрался, потыкал, и не нашел способа. Если Вы считаете, что это возможно - напишите как и я с удовольствием переведу Вам $1-2.
    Последний раз редактировалось vadim.vua; 24.03.2014 в 21:26.
    • 0
  9. Студент Аватар для GameAgregator
    • Регистрация: 17.11.2011
    • Сообщений: 89
    • Репутация: 12
    vadim.vua, спасибо за щедрое предложение, конечно, но если бы я точно знал, как это сделать - я бы вам подсказал уже ) А так - уже выше дал рекомендацию, как поступить наиболее эффективно в вашем случае...
    GameAgregator.com - конверт гемблинг трафика со всего мира. Есть решения под Android и iOS.
    • 0
  10. Дипломник
    • Регистрация: 15.07.2013
    • Сообщений: 189
    • Репутация: 43
    • Webmoney BL: ?
    Цитата Сообщение от vadim.vua Посмотреть сообщение
    Перепробовал кучу способов - никак нельзя убрать этот внешний редирект :-(
    Кто подскажет решение?
    cOAPerator вроде дал правильное решение. Кэш в браузере чистили? При игре с редиректами и htaccess одно из главных правил - каждый раз вычищать кэш. Не знаю почему, но они имеют дурную привычку запоминать старые редиректы. Нас тут однажды чуть до белого каления это не довело. :-)
    • 0
Страница 1 из 2 12 Последняя

Похожие темы

Темы Раздел Ответов Последний пост
Помогите разобраться с редиректом
Прочее 4 18.10.2012 20:25
Помогите с редиректом 301
DLE 8 20.05.2012 13:31
Помогите с 301 редиректом
Web программирование 6 04.06.2011 15:37
Помогите с .htaccess!
Web программирование 0 31.01.2011 03:22

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры