Lin: mod_perl und REDIRECT nach POST

Huhu,

Nachdem ich es jetzt endlich geschafft hab ein bestehendes
Perl-Projekt aus einer CGI-Umgebung nach mod_perl zu 'portieren',
hängts noch an ein Paar Kleinigkeiten. Eine z.B. ist:

Ein Formular wird per POST abgeschickt, und nach dem submit soll der
client auf eine andere Seite redirected werden.
Davor habe ich einfach den Header direkt ausgegeben:

  
print "Location: http://www.example.com/url\n\n";  

Da das bei mod_perl etwas anders läuft, hab ichs jetzt zwar geschafft,
zu redirecten:

  
$r->headers_out->{'Location'} = "http://www.example.com/url";  
$r->status(Apache2::Const::REDIRECT);  

Allerdings wird anscheinend jetzt die POST-Methode dem redirect 'mitgegeben'.
Wenn ich auf der neuen Seite F5 drücke, kommt die typische Warnung,
es handle sich um einen POST-Request, ob ich sicher nochmal abschicken will.
Genau das wollte ich ja vermeiden und das war mit der 'alten' (CGI-)
Methode auch nicht so.

Muss ich dem Apache noch was sagen? Bin bisher nicht fündig geworden.

Danke, Lin

--
Mister rabbit says, "A moment of realization is worth a thousand prayers."
  1. Hallo,

    $r->headers_out->{'Location'} = "http://www.example.com/url";
    $r->status(Apache2::Const::REDIRECT);

    Allerdings wird anscheinend jetzt die POST-Methode dem redirect 'mitgegeben'.

    dafür gibt es den Status 303, der den Client veranläßt, eine GET-Request zur angegebenen Resource durchzuführen: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.4

    Gruß aus Berlin!
    eddi