Hello,
I have this modperl handler:
use Apache2::RequestRec ();
use Apache2::Connection ();
use Apache2::RequestUtil ();
use Apache2::ServerUtil ();
use Apache2::Log ();
use Apache2::Request ();
use Apache2::Const -compile => qw(OK FORBIDDEN);
sub handler {
my $r = shift;
my $q = Apache2::Request->new($r);
my $s = Apache2::ServerUtil->server;
# get customer's ip
my $ip = $r->connection->remote_ip;
if ( is_valid_ip($ip) ){
return Apache2::Const::OK;
} else {
$s->log_error("$ip FORBIDDEN");
return Apache2::Const::FORBIDDEN;
}
}
which verify the client's IP and return OK if ip is valid, otherwise
return FORBIDDEN.
Now I have to rewrite the requested url to another one, for example,
when customer requests:
http://example.com/path/12345_YWJjZGVmZw.mp4
the handler will remove the string after "_" (includes the "_"
itself), so the url will become:
http://example.com/path/12345.mp4
(because only 12345.mp4 is a real file on the filesystem,
12345_YWJjZGVmZw.mp4 is just virtual.)
How to implement that?
Thanks for your kind helps.