Реклама на сайте Advertise with us

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

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

php

С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410


Передовик Master-X (16.01.2010)
Ссылка на сообщениеДобавлено: 24/05/08 в 12:19       Ответить с цитатойцитата 

сабж.
ситуация следующая:
есть урл вида host.com/index.php?p=5
как мне с него сделать редирект через htaccess на host.com ???
и еще, урл может быть вида host.com/index.php?p=5&m=3 то бишь $m это типа подраздела, необходимо чтобы оттуда тоже был редирект на host.com

кароче, если ?p=5 или ?p=5&m=3 то сразу редирект на корень.

конструкция вида:
Код:
RewriteEngine on
RewriteRule ^index.php?p=5(.*)$ index.php [R=301,L]

чета не пашет(тут без подразделов). Помогите плизз, очень нада.
С меня рейтинг icon_smile.gif

IPhosters.com - любые решения для Вас (виртуалы от $4.99, vps от $11.99, дедики от $95)

0
 

« ... full on ... »

С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686

Ссылка на сообщениеДобавлено: 24/05/08 в 13:19       Ответить с цитатойцитата 

Можно вот так:

Код:
RewriteEngine on
RewriteCond %{REQUEST_URI} index.php
RewriteCond %{QUERY_STRING} (p=5|p=5&m=3)
RewriteRule .* /index.php [R=301,L]

Power of the lime madness...

3
 

php

С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410


Передовик Master-X (16.01.2010)
Ссылка на сообщениеДобавлено: 24/05/08 в 15:22       Ответить с цитатойцитата 

Все вроде работает, но есть одна трабла.
После редиректа урл становится видом
Код:
index.php?p=5&m=3

то есть открывается главная пага, но один хуй в строке запроса остается прежний урл. Как это исправить?

IPhosters.com - любые решения для Вас (виртуалы от $4.99, vps от $11.99, дедики от $95)

0
 



С нами с 19.03.07
Сообщения: 129
Рейтинг: 69

Ссылка на сообщениеДобавлено: 24/05/08 в 15:42       Ответить с цитатойцитата 

Предлогаю строку
Код:
RewriteCond %{QUERY_STRING} (p=5|p=5&m=3)


заменить на:
Код:
RewriteCond %{QUERY_STRING} ^p=(.+)


сразу станет ясно почему не работает icon_smile.gif
ПО сабжу жаль, но у меня не получилось пока никак сделать то что надо. icon_sad.gif

:)

0
 

php

С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410


Передовик Master-X (16.01.2010)
Ссылка на сообщениеДобавлено: 24/05/08 в 15:49       Ответить с цитатойцитата 

правило Corex работает как нада, но в строке остается прежний урл. как бы сделать чтоб остался чистый index.php ?

IPhosters.com - любые решения для Вас (виртуалы от $4.99, vps от $11.99, дедики от $95)

0
 



С нами с 03.07.07
Сообщения: 481
Рейтинг: 862

Ссылка на сообщениеДобавлено: 24/05/08 в 17:44       Ответить с цитатойцитата 

<?php
if (isset($_GET[p]) && ($_GET[p]==5)){
header("HTTP/1.1 301 Moved Permanently");
header("Location: /index.php");
exit();
}
?>
на пхп редирект

python, php, js

0
 

php

С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410


Передовик Master-X (16.01.2010)
Ссылка на сообщениеДобавлено: 24/05/08 в 17:45       Ответить с цитатойцитата 

Мне нада через htaccess
на php я бы уже давно это реализовал.

IPhosters.com - любые решения для Вас (виртуалы от $4.99, vps от $11.99, дедики от $95)

0
 



С нами с 06.10.06
Сообщения: 964
Рейтинг: 742

Ссылка на сообщениеДобавлено: 24/05/08 в 17:58       Ответить с цитатойцитата 

через htaccess походу неполучится так редирект сделать...
Обзови этот пхп скрипт
<?php header("location:http://host.com/index.html"); ?>
redirect.php
и напиши в htaccess

RewriteEngine on
RewriteCond %{REQUEST_URI} index.php
RewriteCond %{QUERY_STRING} (p=5|p=5&m=3)
RewriteRule .* /redirect.php [R=301,L]

0
 

php

С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410


Передовик Master-X (16.01.2010)
Ссылка на сообщениеДобавлено: 24/05/08 в 18:04       Ответить с цитатойцитата 

А поисковики как отнесутся к двойному редиректу?

IPhosters.com - любые решения для Вас (виртуалы от $4.99, vps от $11.99, дедики от $95)

0
 



С нами с 03.07.07
Сообщения: 481
Рейтинг: 862

Ссылка на сообщениеДобавлено: 24/05/08 в 20:31       Ответить с цитатойцитата 


херово. используй редирект на пхп - не парься )

python, php, js

0
 

« ... full on ... »

С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686

Ссылка на сообщениеДобавлено: 24/05/08 в 21:36       Ответить с цитатойцитата 

Точно, строка запроса передаётся. Попробуй обмануть апач вот так, должно сработать:

Код:
RewriteEngine on
RewriteCond %{REQUEST_URI} index.php
RewriteCond %{QUERY_STRING} (p=5|p=5&m=3)
RewriteRule .* /index.php? [R=301,L]

Power of the lime madness...

5
 

php

С нами с 09.10.06
Сообщения: 3706
Рейтинг: 2410


Передовик Master-X (16.01.2010)
Ссылка на сообщениеДобавлено: 25/05/08 в 08:07       Ответить с цитатойцитата 

Corex огромный респект тебе и +5
Я под себя еще чуток подправил правило но идею твою понял. Еще раз огромное спасибо!

IPhosters.com - любые решения для Вас (виртуалы от $4.99, vps от $11.99, дедики от $95)

0
 

« ... full on ... »

С нами с 17.03.07
Сообщения: 670
Рейтинг: 1686

Ссылка на сообщениеДобавлено: 25/05/08 в 08:29       Ответить с цитатойцитата 

_s_[sov]:, не за что! icon_biggrin.gif

Power of the lime madness...

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »