Назад | Перейти на главную страницу

извлечь значение параметра строки запроса в RewriteRule

Я пишу правило перезаписи apache 2.4, чтобы удалить параметр строки запроса и создать файл cookie из его значения.

например:

http://example.com/?param1=value1&my_param=my_value&param2=value2

к

http://example.com/?param1=value1&param2=value2

Я успешно использую apache RewriteRule для установки файла cookie, но я хотел бы установить значение параметра предварительно добавленной строки запроса как значение cookie.

если я удалю my_param = my_value из строки запроса

я хочу, чтобы значение cookie было my_value

это то, что я делал до сих пор, единственная проблема в том, что я не могу понять, как получить "my_value".

RewriteCond %{QUERY_STRING}  (.*)(?:^|&)utm_source=(?:[^&]*)((?:&|$).*)

RewriteCond %1%2 (^|&)([^&].*|$)

RewriteRule ^(.*)$ $1?%2 [CO=utm_source:my_value_here:.example.org:1440:/,R=301]

Любая помощь будет принята с благодарностью!

моя ошибка была 301, которые выполняют кеширование, я получаю его работу с более простым rewriteRule

RewriteCond %{QUERY_STRING} ^(.*)my_param=([^&]+)&?(.*)$
RewriteRule ^(.*)$ /$1?%1%3 [CO=my_param:%2:.example.com:1440:/,R=302]