'Nabend,
#!/usr/bin/perl
read(STDIN, $url, $ENV{'CONTENT_LENGTH'});
print "Location:http://www.homepage.de$url\n";
exit;
Wenn wirklich nur der eine Parameter übergeben wird, schreib zwischen dem "read" und dem "print" noch
$url =~ s/^link=//;
bedeutet folgendes:
Wende auf die Variable "$url" einen regulären Ausdruck an ("=~"), und zwar eine Ersetzung (Substitution, s/^link=//).
Die Ersetzung passiert folgendermassen: Suchtext ist das zwischen dem ersten / und dem mittleren /, also in diesem Fall "^link=", ersetzt wird es durch das zwischen dem mittleren / und dem letzten /, also in diesem Fall nix. Das "^" bedeutet "Suche den Text link= nur am Anfang des zu druchsuchenden Textes".
Weitere Infos zu regulären Ausdrücken siehe "man perlre" wenn du unter Linux/Unix arbeitest.
Ach ja, du kannst es auch versuchen mit
substr $url,0,5,"";
wodurch aus der Variable "$url" von Beginn an ("0") die ersten fünf Zeichen durch "" ersetzt werden (siehe perldoc -f substr). Aber schau mal in einem Monat wieder in den Quelltext, und du weisst nicht mehr unbedingt wofür das gut war...
Wenn noch mehr Parameter übergeben werden, nimm das Perlmodul "CGI".
HTH
Thorsten