Никак не могу сделать правильный 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=город Перепробовал кучу способов - никак нельзя убрать этот внешний редирект :-( Кто подскажет решение?
shkip3r, У меня не просто /articles/novosti, а /articles/novosti/город. Например /articles/novosti/moscow/. И городов много, вручную не перечислишь. Это включенный ЧПУ. И в предложенном Вами примере регулярные выражения не применяются, поэтому все скопом не перенаправишь на /articles/news/город. Приходится применять mod_rewrite в .htaccess, у которого "глюк" если указал внешний редирект в начале, то он тянется до конца, как печать в паспорте :-(
На фрилансерской бирже создали бы проект, вам бы за отзыв и символические $1-2 уже бы давно сделали ) По-моему, это эффективней, чем неделю гадать. Хотя за неделю в правилах модреврайта уже можно было разобраться или хотя бы "методом тыка" найти нужный вариант :)
GameAgregator.com - конверт гемблинг трафика со всего мира. Есть решения под Android и iOS.
GameAgregator, За первый пункт спасибо, так и сделаю - не знал об этом. Было бы здорово, если бы и ссылку кинули на биржу. По второму пункту: уже разобрался, потыкал, и не нашел способа. Если Вы считаете, что это возможно - напишите как и я с удовольствием переведу Вам $1-2.
Последний раз редактировалось vadim.vua; 24.03.2014 в 21:26.
vadim.vua, спасибо за щедрое предложение, конечно, но если бы я точно знал, как это сделать - я бы вам подсказал уже ) А так - уже выше дал рекомендацию, как поступить наиболее эффективно в вашем случае...
GameAgregator.com - конверт гемблинг трафика со всего мира. Есть решения под Android и iOS.
Перепробовал кучу способов - никак нельзя убрать этот внешний редирект :-( Кто подскажет решение?
cOAPerator вроде дал правильное решение. Кэш в браузере чистили? При игре с редиректами и htaccess одно из главных правил - каждый раз вычищать кэш. Не знаю почему, но они имеют дурную привычку запоминать старые редиректы. Нас тут однажды чуть до белого каления это не довело. :-)