mod_rewrite и урл с параметрами

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
504

Вроде простое правило:

RewriteRule ^(.+\.pdf)$ http://mysite.ru/$1 [P,NC]

Если будет http://mysite2.ru/file.pdf, то всё отлично работает. Если же урл будет такой:

http://mysite2.ru/?year=2011&file=files/articles/spenTimes.pdf

Правило не срабатывает.

Вопрос банален))) Почему? :crazy:

LEOnidUKG добавил 27.08.2011 в 23:17

QSA пробовал подставлять. По сути получается, что mow_rewrite не видит параметры после ?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
[umka]
На сайте с 25.05.2008
Offline
456
#1

Ну и ответ будет банален :)

Всё что после "?" — это query string

И нужно это дело обрабатывать дополнительным

RewriteCond %{QUERY_STRING} ^(.+\.pdf)$

Вопрос по перезаписи url-ов с параметрами задаётся по 10 раз на дню :)

p.s. в вашем случае скорее всего нужно будет действовать в два этапа

RewriteCond %{QUERY_STRING} ^(.+\.pdf)$

RewriteRule ^(.*)$ http://mysite.ru/$1%1 [P,NC]

RewriteRule ^(.+\.pdf)$ http://mysite.ru/$1 [P,NC]

Хотя я не совсем понимаю, чего это вы такое делаете :) Ааа.. всё, понял

Лог в помощь!
LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#2

Урл проходит, но 404.

Где-то он повреждается.

LEOnidUKG добавил 28.08.2011 в 00:59

Аха нашёл. Надо так:

RewriteRule ^(.*)$ http://mysite.ru/$1?%1 [P,NC]

Усё, благодарю. Просто как-то не работал с {QUERY_STRING}, но век живи, век учись.

Благодарю :)

[umka]
На сайте с 25.05.2008
Offline
456
#3
LEOnidUKG:
Аха нашёл. Надо так:
RewriteRule ^(.*)$ http://mysite.ru/$1?%1 [P,NC]

Точняк, забыл кнопку ткнуть :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий