Помогите с редиректом в .htaccess - Webmasters.ru - RSS http://webmasters.ru/forum/showthread.php?t=55710 SEO форум вебмастеров - Поисковые системы, оптимизация, раскрутка сайта, оптимизация и продвижение сайта в поисковых системах 1741876635 Elesite CMS 60 http://webmasters.ru/forum/images/wm/misc/rss.png SEO форум вебмастеров Webmasters.ru http://webmasters.ru/forum Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=585316 Sat, 15 Mar 2014 19:09:14 GMT Никак не могу сделать правильный 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=город Перепробовал кучу способов - никак нельзя убрать этот внешний редирект :-( Кто подскажет решение? Помогите с редиректом в .htaccess by cOAPerator http://webmasters.ru/forum/showpost.php?p=585361 Sun, 16 Mar 2014 04:57:49 GMT RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /news/$1 [R=301,L] RewriteRule ^news/([a-zA-Z0-9_-]+)$ city-news.php?city=$1 [L,QSA] так попробуйте Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=585458 Sun, 16 Mar 2014 14:09:49 GMT cOAPerator, попробовал, переадресация происходит, но в строке броузера после ввода www.site.ru/novosti/город пишет www.site.ru/city-news.php?city=город, а не www.site.ru/news/город. :-( То есть PR и все остальное пропадет. Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=587136 Sat, 22 Mar 2014 15:02:30 GMT Тема все еще актуальная. Неужели это невозможно?! Такая простая с виду задача... Помогите с редиректом в .htaccess by shkip3r http://webmasters.ru/forum/showpost.php?p=587500 Mon, 24 Mar 2014 05:58:21 GMT подскажите, а чем такой способ не устраивает? Redirect 301 /articles/novosti http://www.site.ru/articles/news Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=587632 Mon, 24 Mar 2014 14:13:56 GMT shkip3r, У меня не просто /articles/novosti, а /articles/novosti/город. Например /articles/novosti/moscow/. И городов много, вручную не перечислишь. Это включенный ЧПУ. И в предложенном Вами примере регулярные выражения не применяются, поэтому все скопом не перенаправишь на /articles/news/город. Приходится применять mod_rewrite в .htaccess, у которого "глюк" если указал внешний редирект в начале, то он тянется до конца, как печать в паспорте :-( Помогите с редиректом в .htaccess by GameAgregator http://webmasters.ru/forum/showpost.php?p=587637 Mon, 24 Mar 2014 15:10:13 GMT На фрилансерской бирже создали бы проект, вам бы за отзыв и символические $1-2 уже бы давно сделали ) По-моему, это эффективней, чем неделю гадать. Хотя за неделю в правилах модреврайта уже можно было разобраться или хотя бы "методом тыка" найти нужный вариант :) Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=587638 Mon, 24 Mar 2014 15:12:38 GMT GameAgregator, За первый пункт спасибо, так и сделаю - не знал об этом. Было бы здорово, если бы и ссылку кинули на биржу. По второму пункту: уже разобрался, потыкал, и не нашел способа. Если Вы считаете, что это возможно - напишите как и я с удовольствием переведу Вам $1-2. Помогите с редиректом в .htaccess by GameAgregator http://webmasters.ru/forum/showpost.php?p=587642 Mon, 24 Mar 2014 15:32:48 GMT vadim.vua, спасибо за щедрое предложение, конечно, но если бы я точно знал, как это сделать - я бы вам подсказал уже ) А так - уже выше дал рекомендацию, как поступить наиболее эффективно в вашем случае... Помогите с редиректом в .htaccess by druzhkov http://webmasters.ru/forum/showpost.php?p=587774 Tue, 25 Mar 2014 05:16:54 GMT Перепробовал кучу способов - никак нельзя убрать этот внешний редирект :-( Кто подскажет решение? cOAPerator вроде дал правильное решение. Кэш в браузере чистили? При игре с редиректами и htaccess одно из главных правил - каждый раз вычищать кэш. Не знаю почему, но они имеют дурную привычку запоминать старые редиректы. Нас тут однажды чуть до белого каления это не довело. :-) Помогите с редиректом в .htaccess by shkip3r http://webmasters.ru/forum/showpost.php?p=587783 Tue, 25 Mar 2014 05:44:43 GMT druzhkov, точно, я в первый раз тоже на этом обжегся) Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=588109 Wed, 26 Mar 2014 06:31:31 GMT Кеш чистил, все равно показывает конечный URL :-( В различных описаниях читал, что нельзя переделать внешний редирект на внутренний, то есть если поставил 301, то как не извращайся, будет показан последний url. Я уж и пробовал "уводить" на другие директории со своим .htaccess, все равно не получается... Помогите с редиректом в .htaccess by sakhseo http://webmasters.ru/forum/showpost.php?p=588335 Wed, 26 Mar 2014 21:21:39 GMT Вот так всё работает. RewriteEngine On RewriteBase / RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /news/$1 [L,R=301] RewriteRule ^news/([a-zA-Z0-9_-]+)$ /city-news.php?city=$1 [L] Но, о каких /articles/ вы потом пишите? Вы определитесь и напишите один раз нормально что вам нужно. UP. Слешь на конце? Замените на RewriteRule ^novosti/([a-zA-Z0-9_-]+)/$ /news/$1 [L,R=301] Или так RewriteRule ^novosti/([a-zA-Z0-9_-]+)/?$ /news/$1 [L,R=301] RewriteEngine On RewriteBase / RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /news/$1 [L,R=301] RewriteRule ^news/([a-zA-Z0-9_-]+)$ /city-news.php?city=$1 [L] Но, о каких /articles/ вы потом пишите? Вы определитесь и напишите один раз нормально что вам нужно. UP. Слешь на конце? Замените на RewriteRule ^novosti/([a-zA-Z0-9_-]+)/$ /news/$1 [L,R=301] Или так RewriteRule ^novosti/([a-zA-Z0-9_-]+)/?$ /news/$1 [L,R=301]]]> Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=588472 Thu, 27 Mar 2014 10:38:00 GMT sakhseo, Об /articles/ писал не я, а shkip3r. Попробовал, все равно в результате в строке отражается city-news.php?city=город :-( Получается, что если в начале цепочки указал 301 редирект, то все преобразования проходят под "знаком" внешнего редиректа, результат которого - отражение в строке браузера конечного url. А в конечном url нужен включенный ЧПУ, который делается внутренним редиректом. Вот и получается противоречие... Помогите с редиректом в .htaccess by sakhseo http://webmasters.ru/forum/showpost.php?p=588473 Thu, 27 Mar 2014 10:49:39 GMT Прежде чем написать, я проверил. Скопируйте полностью что вы пытаетесь делать. И да, если я поменяю сторочки RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /news/$1 [L,R=301] RewriteRule ^news/([a-zA-Z0-9_-]+)$ /city-news.php?city=$1 [L] местами, ничего не изменится. Тут по другому работает. Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=588489 Thu, 27 Mar 2014 11:50:58 GMT sakhseo, Все равно после запроса http://www.site.ru/novosti/novomoskovsk в строке пишет: http://www.site.ru/city-news.php?city=novomoskovsk А на http://www.site.ru/news/novomoskovsk - все ок остается на этом урле. Вот .htaccess: RemoveHandler .html .htm AddType application/x-httpd-php .php .htm .html .phtml php_flag display_errors on php_value error_reporting 2047 php_value max_execution_time 200 RewriteEngine On RewriteBase / RewriteRule ^novosti/([a-zA-Z0-9_-]+)$ /news/$1 [L,R=301] RewriteRule ^news/([a-zA-Z0-9_-]+)$ /city-news.php?city=$1 [L] # склейка доменов RewriteCond %{HTTP_HOST} ^site\.ru$ [NC] RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L] RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /index.html RewriteRule .* / [R=301,L] FileETag MTime Size ExpiresActive on ExpiresDefault "access plus 1 month" DefaultLanguage ru AddDefaultCharset windows-1251 PHP_VALUE default_charset windows-1251 ExpiresActive on ExpiresDefault "access plus 1 month" DefaultLanguage ru AddDefaultCharset windows-1251 PHP_VALUE default_charset windows-1251]]> Помогите с редиректом в .htaccess by sakhseo http://webmasters.ru/forum/showpost.php?p=588503 Thu, 27 Mar 2014 12:41:33 GMT RemoveHandler .html .htm AddType application/x-httpd-php .php .htm .html .phtml php_flag display_errors on php_value error_reporting 2047 php_value max_execution_time 200 RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^test4\.ru$ [NC] RewriteRule ^(.*)$ http://www\.test4.ru/$1 [L,R=301] RewriteRule ^novosti/([a-zA-Z0-9_-]+)/?$ /news/$1 [L,R=301] RewriteRule ^news/([a-zA-Z0-9_-]+)/?$ /city-news.php?city=$1 [L] RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /index.html RewriteRule .* / [R=301,L] FileETag MTime Size ExpiresActive on ExpiresDefault "access plus 1 month" DefaultLanguage ru AddDefaultCharset windows-1251 PHP_VALUE default_charset windows-1251 Вот так попробуй. Только test4 на своё замени. И не совсем понятно что у тебя будет открываться когда не будет подпадать под правила))) RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^test4\.ru$ [NC] RewriteRule ^(.*)$ http://www\.test4.ru/$1 [L,R=301] RewriteRule ^novosti/([a-zA-Z0-9_-]+)/?$ /news/$1 [L,R=301] RewriteRule ^news/([a-zA-Z0-9_-]+)/?$ /city-news.php?city=$1 [L] RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /index.html RewriteRule .* / [R=301,L] FileETag MTime Size ExpiresActive on ExpiresDefault "access plus 1 month" DefaultLanguage ru AddDefaultCharset windows-1251 PHP_VALUE default_charset windows-1251 Вот так попробуй. Только test4 на своё замени. И не совсем понятно что у тебя будет открываться когда не будет подпадать под правила)))]]> Помогите с редиректом в .htaccess by vadim.vua http://webmasters.ru/forum/showpost.php?p=588509 Thu, 27 Mar 2014 13:04:12 GMT sakhseo, Огромный респект, sakhseo! :-) Вы - волшебник! Я склейку доменов не там поставил, получается? И не совсем понятно что у тебя будет открываться когда не будет подпадать под правила))) Не понял этот вопрос.