Помогите с редиректом

Alexandr3

Гуру форума
Заблокирован
Регистрация
22 Апр 2008
Сообщения
428
Реакции
96
  • Автор темы
  • Заблокирован
  • #1
Есть .htaccess
PHP:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.seit
RewriteRule (.*) http://seit/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php

Ссылки открываются вида seit/ru/glavnaya/news,
надо 301 редирект c seit/ru на seit/
надо 301 редирект c seit/ru/glavnaya/ на seit/
А ссылки seit/news
 
Если я правильно понял, то так:
Код:
RewriteEngine on 
RewriteBase / 
RewriteRule ^/ru$ / [R=301,L]
RewriteRule ^ru/glavnaya/$ / [R=301,L]
RewriteCond %{HTTP_HOST} ^www.seit 
RewriteRule (.*) http://seit/$1 [R=301,L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php
А с этим что делать?
 
Тогда будет так:
Код:
RewriteEngine on 
RewriteBase / 
RewriteRule ^/ru$ / [R=301,L]
RewriteRule ^ru/glavnaya/$ / [R=301,L]
RewriteRule ^ru/glavnaya/news(.*) /news$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.seit 
RewriteRule (.*) http://seit/$1 [R=301,L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php
Но
Код:
RewriteRule ^ru/glavnaya/news(.*) /news$1 [R=301,L]
Будет редиректить с seit/ru/glavnaya/newsчтоугодно на seit/newsчтоугодно. Если там формат типа ru/glavnaya/news/1343 или что-то подобное, лучше поставить:
Код:
RewriteRule ^ru/glavnaya/news/(.*) /news/$1 [R=301,L]
 
  • Автор темы
  • Заблокирован
  • #5
Спасибо все вышло кроме ссылки seit/ru/, ее не хочет в упор директить на /
 
Код:
RewriteEngine on 
RewriteBase / 
RewriteRule ^/ru/?$ / [R=301,L]
RewriteRule ^ru/glavnaya/?$ / [R=301,L]
RewriteRule ^ru/glavnaya/news(.*) /news$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.seit 
RewriteRule (.*) http://seit/$1 [R=301,L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php
Теперь должны работать варианты со слешем и без.
 
Назад
Сверху