extrai o valor do parâmetro da string de consulta em RewriteRule

1

Estou escrevendo uma regra de reconfiguração do apache 2.4 para remover um parâmetro de string de consulta e criar um cookie a partir de seu valor.

por exemplo:

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

para

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

Estou usando com êxito o RewriteRule do Apache para definir um cookie mas gostaria de definir o valor do parâmetro da string de consulta pré-anexado como valor do cookie.

se eu remover my_param = my_value da string de consulta

Eu quero que o valor do cookie seja my_value

isto é o que eu fiz até agora, o único problema é que eu não consigo descobrir para recuperar "my_value".

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

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

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

Qualquer ajuda seria muito apreciada!

    
por erwan 08.03.2018 / 17:24

1 resposta

1

meu erro foi o 301 que executa o cache, eu consegui trabalhar com um rewriteRule simples

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