Редирект

Статус
В этой теме нельзя размещать новые ответы.

z3rg

Мой дом здесь!
Регистрация
2 Фев 2007
Сообщения
732
Реакции
344
Подскажите как сделать редирект чтобы открылся этот же урл только добавился ключ к примеру:
вводишь в браузере index.php открывается index.php?key=3242564574
вводишь в браузере post.php?sdfsf=1 открывается post.php?sdfsf=1&key=3242564574

и еже вопрос откуда можно брать ключ помимо того как указать в .htaccess
 
RewriteEngine On
RewriteBase /
RewriteRule ^.*$ %{REQUEST_URI}?key=3242564574&%{QUERY_STRING} [R=301,L]

не проверял
 
  • Нравится
Реакции: z3rg
работает только получается зацикливание, нормально срабатывает только если конкретно
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ %{REQUEST_URI}?key=1 [R=301,L]

сойдет, только вот почему когда перебрасывает скрипт не выполняется - пишет Moved Permanently
 
у меня на каталог идут запросы на старый движок /index.php?add
на новом движке страница добавления в каталог /cncat_add.php
как сделать перенаправление? предыдущий вариант не работает
 
z3rg
Попробуй следующий вариант:
PHP:
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} !key=
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1?key=3242564574&%{QUERY_STRING} [R=301,L]
А вот ключ, откуда-нибудбь брать сложно. Как вариант, можно из своего скрипта динамически менять .htaccess, заменяя регуляркой ключ в этом правиле.

P.S. Кстати, а так ли необходимо, чтобы ключ было видно в строке браузера? Может лучше сделать без 301 редиректа, и не показывать ключ вообще?
 
  • Нравится
Реакции: z3rg
andrnag, большое спасибо, работает :ay:.

А вот ключ, откуда-нибудбь брать сложно. Как вариант, можно из своего скрипта динамически менять .htaccess, заменяя регуляркой ключ в этом правиле.

P.S. Кстати, а так ли необходимо, чтобы ключ было видно в строке браузера? Может лучше сделать без 301 редиректа, и не показывать ключ вообще?

ключ нужен именно в url, чтоб его было видно

Если в другую директорию закинуть будет работать только если в главной лежит .htaccess или же самому необходимо указывать, вопрос - можно на автомате определить RewriteBase?
 
RewriteBasse по умолчанию равен / и, на сколько я знаю, определить каталог в котором лежит .htaccess из самого .htaccess нельзя.

Но я не понял зачем тебе в каждый каталог класть свой .htaccess? Пусть лежит в корне, и он будет наследоваться во все папки ниже по дереву.

P.S. Спасибо за SCS :)
 
  • Нравится
Реакции: z3rg
RewriteBasse по умолчанию равен / и, на сколько я знаю, определить каталог в котором лежит .htaccess из самого .htaccess нельзя.

Но я не понял зачем тебе в каждый каталог класть свой .htaccess? Пусть лежит в корне, и он будет наследоваться во все папки ниже по дереву.

P.S. Спасибо за SCS :)

а можно тоже самое сделать ссылками, то есть дописать к url запрос, а то при редиректе пост запросы не отправляет.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху