Alexander (HH): Post-Daten nach 404-Redirect behalten

Beitrag lesen

Moin Moin!

Immerhin kenne ich jetzt das Prinzip :) Nur leider Benutze ich einen kostenlosen Webhost, bei dem ich keine eigenen CGI Scripts oder Perl habe (aber PHP). Gibt es da einen "allgemeinen" Weg, wie ich mir meinen Server so konfiguriere, damit ich mein Zeil habe (vielleicht mit einer .htaccess-Datei?)?

Der Server dürfte bereits (fast) passend konfiguriert sein, mit dem kleinen Haken, dass Du mit ".php/" in der URL leben mußt.

Ausprobieren kannst Du das ganz leicht. Lege eine PHP-Datei auf ähnlich hohem Niveau wie mein Perl-Script an, z.B. so, dass sie unter http://dein.web.server/hallo.php erreichbar ist. Die Informationen aus PATH_INFO findest Du $_SERVER['PATH_INFO'] bzw. $_SERVER['ORIG_PATH_INFO'], siehe Handbuch, für einen ersten Versuch sollte dieses Stückchen erst einmal ausreichen:

  
<!doctype html>  
<html><body><pre>Hallo <?php  
    echo htmlspecialchars($_SERVER['PATH_INFO']);  
?> !</pre></body></html>  

Dann rufst Du mal folgende URLs auf:

http://dein.web.server/hallo.php
http://dein.web.server/hallo.php/Welt
http://dein.web.server/hallo.php/Mehr/Text
http://dein.web.server/hallo.php/Dop:pel:punk:te
http://dein.web.server/hallo.php/Frage?Antwort!

Das letzte Ergebnis wird Dich vielleicht überraschen, wenn ja, lass Dir mal die diversen anderen Schlüssel der $_SERVER-Variable anzeigen (siehe Handbuch).

Um das ".php" in der URL wirst Du vermutlich nur dann herumkommen, wenn Du mod_rewrite benutzen kannst, um einen internen Redirekt auszuführen, oder vieleicht mit AddHandler/SetHandler.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".