Practical mod_perlPractical mod_perlSearch this book

A.3. Redirecting POST Requests

Under mod_cgi, it's not easy to redirect POST requests to another location. With mod_perl, however, you can easily redirect POST requests. All you have to do is read in the content, set the method to GET, populate args( ) with the content to be forwarded, and finally do the redirect, as shown in Example A-2.

Example A-2. redirect.pl

use Apache::Constants qw(M_GET);
my $r = shift;
my $content = $r->content;
$r->method("GET");
$r->method_number(M_GET);
$r->headers_in->unset("Content-length");
$r->args($content);
$r->internal_redirect_handler("/new/url");

In this example we use internal_redirect_handler( ), but you can use any other kind of redirect with this technique.



Library Navigation Links

Copyright © 2003 O'Reilly & Associates. All rights reserved.