hotti: .htacces mit GET-Variablen

Beitrag lesen

h1,

Grundsätzlich interessiert sich eine RewriteRule beim Auswerten nicht für den Querystring. Das kann man nur in einer RewriteCond machen, wenn man das vorhat. Wenn man sie allerdings wie in diesem Fall nur unbeachtet durchreichen will, kann das schon erwähnte QSA-Flag helfen.

So!? Damit Du mir folgen kannst, maln bischen ausführlicher. Gegeben sei

RewriteRule ^cgi-bin/.*forum.cgi   /cgi-bin/thread.cgi

womit jeder Request auf any-forum.cgi auf das Script thread.cgi umgeschrieben wird. Anhand des REUQUEST_URI erstelle ich ein Objekt, dabei wird serverseitig nachgeschaut, ob es das Objekt gibt, wenn ja, habe ich ein valides URL-Objekt für die Response:

my $uo = new Basic;

Die Parameter nun, werden mit meinem Parser an das Objekt gebunden, das tut die Method param():

$nr = $uo->param('show');

Somit ist es möglich, mit nur einer ReqriteRule beliebig viele virtuelle Clones eines einzigen Scripts zu erstellen:

http://rolfrost.de/cgi-bin/fred.cgi

Vorausgesetzt natürlich, die Objekte sind auf dem Server hinterlegt. Erfolgt ein Request auf ein nicht konfiguriertes Objekt, wird eine Fehlerseite ausgegeben, Du kannst das gerne testen.

Hotti