Übermittlung von Daten in der URL
Andy
- php
Hallo liebes Forum.
Mir tut sich seit Tagen eine kleine Verständnisfrage auf..
Wenn ich nun auf eine Seite gehe - angenommen eine Art Forum oder sonstiges - und mir abunzu die URL ansehe, dann fällt mir manchmal folgendes Konstrukt auf:
http://www.domain.de/v1/2G237dssjfFjmS93nHd/7/2/283
Wobei das dann im Endeffekt bedeutet, ich im Ordner v1 unterwegs bin, dann halt meine Session-ID gefolgt von meiner Anfrage (z.B. eine Datei oder sonstiges).
Nun weiß ich aber, dass diese Pfade zum größten Teil temporär sind und deshalb wohl nicht (?) jedes Mal eine index-Datei erstellt wird. Oder etwa doch?
Wenn nun keine index-Datei erstellt wird, dann frage ich mich, wie die Daten nun übermittelt werden. Der Browser würde doch versuchen in dieses Ordnerkonstrukt "einzudringen" und nicht in dem Ordner v1 der dazugehörigen index.php die Daten übermitteln, die diese dann entsprechend auswertet.
Wird nun doch eine index-Datei erstellt (temporär oder wie auch immer) oder ist es wirklich möglich, die Daten auf diese Weise zu übermitteln?
Vielen Dank für jede Hilfe =)
lG Andy
Hi, Andy!
In der Regel wird ein Server-interner Rewrite dazu genutzt, diese "Ordnerstruktur" in eine Variablenstruktur zu übersetzen, die vom CGI als GET-Variablen verwendet werden kann.
Gruß, LX
Hi, LX.
Danke für die schnelle Antwort.
Ich dachte allerdings immer, dass CGI dann auch nur in den Ordnern laufen, die in "cgi-bin" abgelegt sind.
Ist der Ordnername konfigurierbar oder etwas in der Art?^^
Sorry wenn ich mich da grade kein bisschen auskenne und solche doofen Fragen stelle, aber mit CGI habe ich mich z.B. noch nie beschäftigt..
Gruß, Andy
Solange Du den Webserver selbst einrichtest, brauchst Du CGIs nicht auf cgi-bin zu beschränken. Mehr Informationen findest Du http://de.selfhtml.org/servercgi/index.htm@title=hier.
Gruß, LX
Hi,
Ich dachte allerdings immer, dass CGI dann auch nur in den Ordnern laufen, die in "cgi-bin" abgelegt sind.
Du kannst aus der URL *keine* Rückschlüsse auf die verwendeten serverseitigen Techniken und Mechanismen ziehen. Manches Merkmal mag zwar als Indiz dienen, weil gewisse Techniken üblicherweise zu ihnen führen, aber genauso gut kann es auch irgend etwas anderes sein.
Die Möglichkeiten sind unbegrenzt.
Ist der Ordnername konfigurierbar oder etwas in der Art?^^
Der "Ordnername" kann eine Referenz auf einen Datenbankinhalt sein. Er kann auch die Regalnummer sein, aus dem ein Roboterarm ein Buch zieht, um eine bestimmte Seite einzuscannen und zurückzuliefern. Oder er ist einfach nur eine Aufhübschung der URL.
Sorry wenn ich mich da grade kein bisschen auskenne und solche doofen Fragen stelle, aber mit CGI habe ich mich z.B. noch nie beschäftigt..
Das ist keine Schande. Kleiner Hinweis: Ich arbeite u.a. an und mit einem System, bei dem der Pfad "foo/bar/qaz/baz.html" bedeuten kann, dass die entstehende Ressource durch PHP aus Dateien zusammengestückelt wird, die in "qaz/bar/foo", "qaz/foo", "qaz/foo/bar" und "bar" liegen - oder auch in "bing/qaz". Genauso gut hätte keiner der Segmente, die in der URL stehen, auch im Verzeichnispfad existieren können. Auf Serverseite kann *alles* passieren, und es existiert kein Weg, Details zu ermitteln, ohne direkten Zugriff auf Serverkonfiguration und -programmierung zu haben.
Cheatah
Hi,
In der Regel wird ein Server-interner Rewrite dazu genutzt, diese "Ordnerstruktur" in eine Variablenstruktur zu übersetzen, die vom CGI als GET-Variablen verwendet werden kann.
Ja, das ist *eine* Möglichkeit.
Erfahrungsgemäß wird aber i.d.R. das Script "v1" heißen, und alles dahinter der Parameter sein (bzw. gerne mehrere Parameter durch z.B. "/" getrennt).
Ob nun v1 ein Unterverzeichnis ist, ein Script oder schlicht umgelenkt wird, kann man ggf. durch versch. Versuche herausfinden. Ich kann das aber auch so tarnen, daß Du das nicht feststellen kannst. I.d.R. macht sich der Webmaster aber nicht die Mühe, so daß man es herausfinden kann. Und, wie gesagt: I.d.R. (im Sinne von "mehrheitlich") ist in einem solchen Fall "v1" das Script ...
Gruß, Cybaer
PS: Schaust Du mal hier ff.. Dort überprüfe ich mal so einen Fall, und komme zum Ergebnis, daß es sich hier eben nicht (wie von einem Poster angenommen) um einen Rewrite handelt, sondern um ein Script mit Parameterübergabe in PATH_INFO.
sondern um ein Script mit Parameterübergabe in PATH_INFO.
Das (Übergabe PATH_INFO) funktioniert natürlich nur dann, wenn der Contnt-Handler nicht über path-info die Übergabe des Scriptpfades erwartet (z.B. bei Konfiguration über die Action-Direktive bei „PHP-CGI“ statt mod_php).
Hi,
Das (Übergabe PATH_INFO) funktioniert natürlich nur dann, wenn der Contnt-Handler nicht über path-info die Übergabe des Scriptpfades erwartet
Apaches "Look Back"-Feature (das mittlerweile wohl auch IIS unterstützt) kann auch generell deaktiviert sein.
Allerdings ist mir noch kein Apache in der freien Wildbahn über den Weg gelaufen, wo es nicht nutzbar gewesen wäre (egal ob Module oder CGI). Aber auch wenn ich div. Provider kenne, das ist natürlich keine repräsentative Erkenntnis ... =;-)
Meine Applikationen (die auf mögl. vielen Servern laufen sollen - selbst wenn deren Konfiguration nicht in der Hand des Kunden liegt) arbeiten möglichst mit PATH_INFO, und wenn das nicht geht, mit dem QUERY_STRING - ohne daß man sich weiter drum kümmern muß ...
Gruß, Cybaer