Apache rewrite rule für nginx umschreiben

stefkey

Member
Hi,

ich versuche eine Regel um zu schreiben. Aber es scheint falsch zu sein. Sieht jemand hier schon einen Fehler?

Code:
RewriteCond %{QUERY_STRING} page=Portal
RewriteRule ^index\.php$ index.php?dashboard/ [R=301,L]

wird
Code:
if ($args ~ "page=Portal"){
        set $rule_0 1$rule_0;
}
if ($rule_0 = "1"){
        rewrite ^/index.php$ /index.php?dashboard/ permanent;
}

Der Aufruf erzeugt nämlich:
https://www.example.com/index.php?d...&dashboard/&dashboard/&dashboard/&page=Portal
 
Du musst den originalen Query String wegwerfen ("/" am Ende deines Replacement Strings mit "?" austauschen). Außerdem kann dein Code vereinfacht werden:

Code:
if ($arg_page = "Portal"){
        rewrite ^/.*$ /index.php?dashboard? permanent;
}

Ich persönlich würde jedoch das Lua-Modul für solche Aufgaben verwenden - ist einfacher und übersichtlicher.
 
Back
Top