GET-Parameter in .htaccess wird entfernt

Ich bin nicht in der Lage, einen GET-Parameter zu entfernen, der von einem 404 SEF-Modul fälschlicherweise hinzugefügt wurde.

Ich möchte "task = view" nur entfernen, wenn es alleine und nicht mit einem anderen Parameter angezeigt wird.

Damit

www.meinewebsite.com/1.html?task=view sollte umgeleitet werdenwww.meinewebsite.com/1.html.

Währendwww.mysite.com?task=view&view=article sollte unverändert bleiben.

Egal welche RewriteRule ich benutze, dieser Parameter geht nicht. Sieht so aus, als würde es aus jeder Umgebungsvariablen generiert, wenn index.php ausgeführt wird.

Zum Beispiel funktioniert das nicht:

RewriteCond %{QUERY_STRING}  ^task=view$ [NC]
RewriteRule (.*)task=view.*  $1 [R=301,L]

Hier ist meine .htaccess-Datei:

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|.php|.html|.htm|.feed|.pdf|.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

Options  -Indexes

Wie geht man damit um?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage