Mailinglisten-Archive |
Daniel Nemetz wrote: > > >du kannst natürlich versuchen, HEAD-Requests zu verschicken > >und prüfen, ob du als Antwort auf eine URL /ein/beliebiger/pfad > >einen Redirect auf /ein/beliebiger/pfad/ zurückbekommst, aber > >das sagt immer noch nichts über das Dateisystem des Servers aus > folgendes ich/ein freund schreibt/e eine suchmaschine. wenn er nun einen > link in einer datei (sorry in einem per http zurückgeliefertem text) > zurückverfolgt so hat er das problem das er nicht weis ob die datei auf die > der link verweist im gleichen verzeichnis liegt oder eines tiefer, nähmlich > in dem verzeichnis welches aussieht als sei es eine datei. das muss er aber > wissen um die datei auf welche der link verweist auch durchsuchen zu können. ok, reduzieren wir uns auf den üblichen Fall: URL-Namespace bildet Dateisystem ab http://xxx/ein/beliebiger/pfad wird angefordert, pfad ist ein Verzeichnis wenn du dem Server mitteilst das du wenigstens HTTP/1.0 verstehst, dann antwortet er mit Status 301 (Moved Permanently) und schickt dir einen Location: header mit der richtigen URL zurück und erzählt dir das Ganze vielleicht auch noch in HTML, falls du doch kein HTTP verstehst aus http://xxx/ein/beliebiger/pfad wird http://xxx/ein/beliebiger/pfad/ erst wenn du jetzt die neue URL, die du zurückbekommen hast, anforderst, bekommst du den Inhalt der Seite und alle relativen URLs können einfach angehängt werden, nachdem alles bis excl. des letzten '/' vom Ende der URL entfernt wurde d.h. du brauchst dir keine Gedanken über Datei oder Verzeichnis zu machen, vielmehr mußt du sicherstellen, das du alle HTTP-Statuscodes verstehst und vergiss bitte nicht das <BASE> Tag zu beachten ...! -- Hartmut Holzgraefe hartmut_(at)_six.de http://www.six.de +49-711-99091-77
php::bar PHP Wiki - Listenarchive