htaccess: Como substituir string por caractere especial?

htaccess: Como substituir string por caractere especial?

Gostaria de redirecionar o seguinte URL de acordo com a seguinte lógica:

Input  : https://www.example.com/blablabla,?trx_id=TX-23
Output : https://www.example.com/blablabla,TX-23

A regra é sempre remover a string:?trx_id=

Eu tentei o seguinte, mas não está funcionando. Parece que está relacionado a caracteres especiais

RewriteRule ^(.+)?trx_id=(.+)$ $1$2 [R=301,L]

Alguém pode ajudar por favor ? Obrigado

Responder1

Em vez disso, tente o seguinte:

RewriteCond %{QUERY_STRING} ^trx_id=([^&]*)
RewriteRule (.*) /$1%1 [QSD,R,L]

ORewriteRule padrãocorresponde apenas ao caminho da URL. Para corresponder à string de consulta, você precisa de umdoençaque verifica a QUERY_STRINGvariável do servidor.

%1(em oposição a $1) é uma referência anterior ao anteriorCondPadrão(ou seja, o valor do trx_idparâmetro URL).

informação relacionada