Alle Listings sind über den iX-Listingsservice erhältlich.
ProxyAddr.pm ersetzt die IP-Adresse des Proxy durch die des Clients.
package Apache::ProxyAddr ;
use Apache::Constants qw(:common) ;
sub handler {
my $r = shift ;
if ($r -> header_in('X-Forwarded-For') =~ /([^,\s]+)$/) {
$r -> connection -> remote_ip($1);
}
return OK;
}
1;
Das Script PerlRewrite.pm ändert den Anfang des Dokumentenpfads von /alt in /neu, überlässt aber dem Apache weitere URI-Transformationen.
package Apache::PerlRewrite ;
use Apache::Constants qw(:common) ;
sub handler {
my $r = shift ;
my $uri = $r -> uri ;
$uri =~ s#^/alt#/neu# ;
$r -> uri ($uri) ;
return DECLINED ;
}
1;
PerlAlias.pm liefert statt der verlangten Dateien in /files die gleichnamigen in /tmp aus.
package Apache::PerlAlias ;
use Apache::Constants qw(:common) ;
sub handler {
my $r = shift ;
my $uri = $r -> uri ;
if ($uri =~ s#^/files/#/tmp/#) {
$r -> filename ($uri) ;
return OK ;
}
return DECLINED ;
}
1;
Das klassische Hello-World als Perl-Modul für den Apache.
package Apache::Hello ;
use Apache::Constants qw(:common) ;
sub handler {
my $r = shift ;
$r -> content_type ('text/html') ;
$r -> send_http_header ;
print "<HTML><HEAD><TITLE>Hello world \
</TITLE></HEAD>\n" ;
print "<BODY><H1>Hello world</H1></BODY></HTML>\n" ;
return OK ;
}
1;
Dieser Text ist der Zeitschriften-Ausgabe 01/2000 von iX entnommen.
iOS, Android, Windows Phone 7 und HTML5 - das neue Sonderheft von heise Developer führt Einsteiger und Profis in die Programmierung mobiler Geräte ein.