mod_rewrite to change query string parameter name
apache, mod-rewrite, query-string, querystringparameter, url-rewriting
Solution
OK think I hacked it together on my own. Please post an answer if you think its brittle or could be done better and I'll accept yours instead
RewriteCond %{QUERY_STRING} ^(.*)partner(.*)$
RewriteRule ^(.*)$ $1?%1a_aid%2 [R=301,L]
Problem
I need help writing a mod rewrite rule to change the name of a query string parameter. I want to change the name, not the value. old name `partner` new name `a_aid` so a link like this ``` http://domain.com/?partner=derphipster&pname=foo&plink=http%3A%2F%2Fbar.com%2Ffoo ``` will become ``` http://domain.com/?a_aid=derphipster&pname=foo&plink=http%3A%2F%2Fbar.com%2Ffoo ``` I found this article but the accepted answer generated errors for the OP: mod_rewrite - old parameter name to new name also this article, but the solution was to use PHP. which will not work in my case: APACHE mod_rewrite change variable name in query string I can't use PHP because some affiliate tracking code creates a cookie from the query string--and expects the a_aid. So I'm trying to convert `partner` into `a_aid` for it