Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: редирект
 
 автор: speedsoft   (11.09.2010 в 21:15)   письмо автору
 
 

Вечер добрый. Помогите, пожалуйста, настроить редирект ссылок с

site.ru/?action=news&newsid=10 на site.ru/action/news/newsid/10/

попробовал

RewriteRule \?action=news&newsid=10 /action/news/newsid/10/ [R=301,L]

но не работает. другие телодвижения тоже не принесли нужного результата ((

  Ответить  
 
 автор: .....   (12.09.2010 в 02:01)
 
   для: speedsoft   (11.09.2010 в 21:15)
 

>RewriteRule \?action=news&newsid=10

query_string не проверяется RewriteRule
RewriteCond %{QUERY_STRING} ^action=.........

  Ответить  
 
 автор: speedsoft   (12.09.2010 в 13:58)   письмо автору
 
   для: .....   (12.09.2010 в 02:01)
 

Спасибо. Заработало, но возникла другая проблема.
опишу проблему с самого начала. изначально ссылки были вида

/index.php?action=news&newsid=10


яндекс их проиндексировал и в поиске они такого вида. я написал правило преобразования

RewriteRule ^([-a-z]+)/([-_0-9a-zA-Z]+)/([-_a-z]+)/([-0-9a-zA-Z]+)/$ index.php?$1=$2&$3=$4 [QSA,L]


страницы нормально стали доступны по адресу
/action/news/newsid/10/


потом возникла необходимость сделать редирект для поисковиков
с вашей помощью родилось правило

RewriteCond %{QUERY_STRING} action=news&nid=([0-9]+) [NC]
RewriteRule ^index.php /action/news/nid/%1/? [L,R=301]

но теперь зацикливается апач (((((

он походу сначала делает редирект на ЧПУ, потом его преобразовывает по 1 правилу и снова образуется редирект ((((

как быть?

  Ответить  
 
 автор: .....   (12.09.2010 в 16:20)
 
   для: speedsoft   (12.09.2010 в 13:58)
 

Только какие-нибудь костыли помогают, типа перестановки параметров в query_string
RewriteRule ...... index.php?$3=$4&$1=$2 .....
(если строго задано Cond %{QUERY_STRING} action=news&nid=([0-9]+))
или похожее,
даже вроде не помогает устанавливать [E=x_var:VALUE] и проверять её
%{REDIRECT_URL} и похожее тоже вроде в таких случаях не помогало

  Ответить  
 
 автор: .....   (12.09.2010 в 16:25)
 
   для: speedsoft   (12.09.2010 в 13:58)
 

или просто добавьте какое нибудь ?redirected&id=1&id2=2 .......

  Ответить  
 
 автор: roma67   (19.06.2012 в 05:01)   письмо автору
 
   для: speedsoft   (12.09.2010 в 13:58)
 

Хочу спросить
Влияет ли как то на поисковую оптимизацию ЧПУ

  Ответить  
 
 автор: Sfinks   (19.06.2012 в 08:22)   письмо автору
 
   для: roma67   (19.06.2012 в 05:01)
 

Влияет.
Сайты без ЧПУ оцениваются поисковиками ниже.
___________
P.S. Cheops обычно просит под новые вопросы заводить новые темы.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования