Morten: Verhalten meines Zählers bei einfügen eines Slashs an die URI

N'Abend!

Mir ist neulich ein recht seltsames Verhalten meines Zählers auf meiner Startseite aufgefallen. Immer wenn ich noch ein Slash an die URI anfüge, springt der Zähler statt einer Zahl höher 5 Zahlen höher und die Stylesheets, die ich per <link /> eingebunden habe, werden nicht "ausgeführt".

http://html-ag.wvs-berlin.de/morten/index.php
Normales Verhalten des Zählers und normale Seitenansicht

http://html-ag.wvs-berlin.de/morten/index.php/
Anormales Verhalten des Zählers und Seitenansicht ohne CSS

Habt ihr dafür eine Erklärung?

Gruß,
Morten

  1. Hi,

    Mir ist neulich ein recht seltsames Verhalten meines Zählers auf meiner Startseite aufgefallen. Immer wenn ich noch ein Slash an die URI anfüge, springt der Zähler statt einer Zahl höher 5 Zahlen höher und die Stylesheets, die ich per <link /> eingebunden habe, werden nicht "ausgeführt".

    zu Deinem Zähler kann niemand außer Dir etwas sagen, da nur Du dessen Funktionsweise kennst. Aber dass relative URIs bei einer Veränderung der Pfadsegmente nicht mehr funktionieren, sollte eigentlich nicht verwundern. Auch die Links z.B. auf http://html-ag.wvs-berlin.de/morten/index.php/css.php liefern offenbar nicht das gewünschte Ergebnis, sondern das der Startseite.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. zu Deinem Zähler kann niemand außer Dir etwas sagen, da nur Du dessen Funktionsweise kennst.

      Bei jedem Aufruf der Seite wird, noch, eine Datei per file_get_contents eingelesen und dann die Zahl darin um 1 erhöht und per file_put_contents reingeschrieben.

      Vielen Dank für eure Antworten!

      Gruß,
      Morten

  2. Hello,

    Mir ist neulich ein recht seltsames Verhalten meines Zählers auf meiner Startseite aufgefallen. Immer wenn ich noch ein Slash an die URI anfüge, springt der Zähler statt einer Zahl höher 5 Zahlen höher und die Stylesheets, die ich per <link /> eingebunden habe, werden nicht "ausgeführt".

    http://html-ag.wvs-berlin.de/morten/index.php
    Normales Verhalten des Zählers und normale Seitenansicht

    http://html-ag.wvs-berlin.de/morten/index.php/
    Anormales Verhalten des Zählers und Seitenansicht ohne CSS

    Netter Versuch, uns ein wenig zu beschäftigen.
    Du hast entweder eine Struktur, die so ähnlich aussieht:

    F    http://html-ag.wvs-berlin.de/morten/index.php/index.php
    D    http://html-ag.wvs-berlin.de/morten/index.php/
    F    http://html-ag.wvs-berlin.de/morten/impressum.php
    F    http://html-ag.wvs-berlin.de/morten/index.php

    oder du verwendest die rewrite-Engine oder eine Fehlerumleitung des Servers.

    Denn was soll man sonst erwarten, wenn man

    http://html-ag.wvs-berlin.de/morten/index.php/impressum.php

    aufruft? Da würde ich einen Fehlerstatus erwarten, und nicht die Anzeige der "index.php"

    Harzliche Grüße vom Berg
    http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau

  3. echo $begrüßung;

    Mir ist neulich ein recht seltsames Verhalten meines Zählers auf meiner Startseite aufgefallen. Immer wenn ich noch ein Slash an die URI anfüge, springt der Zähler statt einer Zahl höher 5 Zahlen höher und die Stylesheets, die ich per <link /> eingebunden habe, werden nicht "ausgeführt".

    Die Antwort lässt sich auch ohne einen Blick in deinen Quelltext leicht geben, wenn man eine Besonderheit des Apachen (und auch des IIS[*]) kennt, die auf den Namen PATH_INFO hört. Sobald in der von links her ausgewerten URL ein Bestandteil vorkommt, der zu einem ausführbaren Objekt (z.B. Scriptdatei, CGI-Programm -- gilt auch, wenn mittels mod_rewrite umgeschrieben) führt, wird mit der Auswertung aufgehört und diese Datei ausgeführt. Der Rest der URL, der diesem Dateinamen folgt, aber noch vor dem Querystring kommt, wird als PATH_INFO auf dem üblichen Weg an das mit der Ausführung beauftragte Programm übergeben. In PHP kann man via $_SERVER['PATH_INFO'] darauf zugreifen.

    Wenn du das weiter untersuchen willst, kannst du dir eine Datei mit <?php phpinfo(INFO_VARIABLES); ?> als Inhalt erstellen und direkt sowie mit angehängtem / und weiteren Werten aufrufen.

    http://html-ag.wvs-berlin.de/morten/index.php/
    Anormales Verhalten des Zählers und Seitenansicht ohne CSS

    Du hast insgesamt 4 Ressourcen verlinkt, die der Browser direkt abruft, weil es sich um Bilder oder CSS-Ressourcen handelt, die er zur Darstellung der Seite benötigt. Da du diese relativ verlinkst, kommt dann soetwas dabei raus:

    http://html-ag.wvs-berlin.de/morten/index.php/dingenskirchen.css

    /morten/index.php wird ausgeführt und bekommt /dingenskirchen.css wird als PATH_INFO übergeben.

    [*] Kann sein, dass es beim IIS versionsabhängig ist. Ich bilde mir ein, das früher bei ihm nicht gesehen zu haben.

    echo "$verabschiedung $name";