The following htaccess code rule shows how to remove a single query parameter from a URL – leaving any existing parameters.
This is done using a rewrite rule and will do a 301 redirect to the new URL path.
This this example we’ll be removing the query parameter “query_var” – regardless of it’s place in the existing URL query string.
Original URL | New URL |
---|---|
http://example.com/?query_var=12345 | http://example.com/ |
http://example.com/?var1=keyword1&query_var=12345 | http://example.com/?var1=keyword1 |
http://example.com/?query_var=123455&var1=keyword1 | http://example.com/?var1=keyword1 |
RewriteEngine on RewriteCond %{QUERY_STRING} ^(.*)&?query_var=[^&]+&?(.*)$ [NC] RewriteRule ^/?(.*)$ /$1?%1%2 [R=301,L]
See it in action …
Reference: https://stackoverflow.com/questions/21857280/using-htaccess-to-remove-single-query-parameter