Bogdan
Bogdan

Reputation: 165

Redirect in htaccess to same page without a certain parameter

For example, redirect:

/somepage.php?parameter1=jon&parameter2=3&lang=en&parameter4=5

to be redirected to:

/somepage.php?parameter1=jon&parameter2=3&parameter4=5

Upvotes: 1

Views: 92

Answers (2)

Florian Lemaitre
Florian Lemaitre

Reputation: 5748

Here you remove parameter lang independently of other parameters for page somepage.php

RewriteCond %{QUERY_STRING}  (.*)(?:^|&)lang=(?:[^&]*)((?:&|$).*)
RewriteCond %1%2 (^|&)([^&].*|$)
RewriteRule ^somepage.php$ somepage.php?%2

Taken from the Official Apache mod_rewrite Documentation

Upvotes: 1

Amit Verma
Amit Verma

Reputation: 41219

Try this :

RewriteEngine on


RewriteCond %{QUERY_STRING} ^perm1=([^&]+)&perm2=([^&]+)&perm3=([^&]+)&lang=([^&]+)&perm5=([^&]+)$
RewriteRule ^index.php$ /index.php?perm1=%1&perm2=%2&perm3=%3&perm5=%5 [NC,L,R]

Another option :

RewriteEngine on


RewriteCond %{THE_REQUEST} /index.php\?perm1=([^&]+)&perm2=([^&]+)&perm3=([^&]+)&lang=([^&]+)&perm5=([^&\s]+) [NC]

RewriteRule ^index.php$ /index.php?perm1=%1&perm2=%2&perm3=%3&perm5=%5 [NC,L,R]

Upvotes: 0

Related Questions