Petra: Script für Datum der letzten Aktualisierung funktioniert nicht

Hallo,

bin kurz vor'm Verzeweifeln: ich habe ein Script, das das Datum der letzten Aktualisierung ermittelt. Lokal funktioniert es wunderbar, aber sobald ich es auf dem Server habe, passiert folgendes:

IE zeigt immer das heutige Datum an (auch wenn keine Aktualisierung stattgefunden hat)
NS 6.2 zeigt immer den 1.1.1970 an (obwohl da garantiert keine Aktualisierung stattgefunden hat ;-)

Das Verrückteste daran ist, dass das gleiche Script auf einer anderen Website läuft wie es sein soll.

Die Site, wo es nicht läuft ist (z. B.): http://www.sarah-hagar.de/kontakte.html (links unten)

Die Site, wo es läuft ist: http://www.organisationsberatung-rosenthal.de

Ich bilde mir ein, dass eigentlich auf beiden das Gleiche steht, oder? Wer kann mir helfen?

Petra

  1. Hallo.

    Das liegt sicher nicht an JavaScript sondern, am Webserver, der auf www.organisationsberatung-rosenthal.de läuft.

    Damit nämlich JS weiss, wann die letztze Aktuallisierung stattfand, muss das Datum im HTTP-Header mit-übertragen werden ..
    Anscheinend ist das bei dem Webserver nicht der Fall ...
    Was läuft dort?? Apache oder IIS oder Netscape Enterprise??

    Wenn das wirklich der Fall ist, wirds schwer, das Problem zu beheben ...

    LG,
    MM

    1. Hallo.

      Das liegt sicher nicht an JavaScript sondern, am Webserver, der auf www.organisationsberatung-rosenthal.de läuft.

      Damit nämlich JS weiss, wann die letztze Aktuallisierung stattfand, muss das Datum im HTTP-Header mit-übertragen werden ..
      Anscheinend ist das bei dem Webserver nicht der Fall ...
      Was läuft dort?? Apache oder IIS oder Netscape Enterprise??

      Wenn das wirklich der Fall ist, wirds schwer, das Problem zu beheben ...

      LG,
      MM

      das dachte ich auch erst, aber es erscheint mir recht unwahrscheinlich, weil beide Sites beim gleichen Provider liegen. Soviel ich weiß, wird Apache verwendet.

      Gruß

      Petra

      1. Hallo ...

        das dachte ich auch erst, aber es erscheint mir recht unwahrscheinlich, weil beide Sites beim gleichen Provider liegen. Soviel ich weiß, wird Apache verwendet.

        Naja - ich hab das ganze mal mit TELNET überprüft ...
        Unter der angegebenen URL von www.sarah-hagar.de wird er Last-Modified-Eintrag im HTTP-Header nicht mitgeschickt, kein Wunder, dass es der Browser dann auch nicht weiss ...

        Es wird bei keiner HTML-Seite auf dieser Domain mitgeschickt ...
        Komisch irgendwie - aber vielleicht hat das der Provider so eingestellt ... frag am besten mal dort nach ...

        LG,
        MM

  2. Hi Petra,

    Die Site, wo es nicht läuft ist (z. B.):
    http://www.sarah-hagar.de/kontakte.html

    HTTP response headers received from server:

    HTTP/1.0 200 OK
    Connection: close
    Date: Sun, 04 Aug 2002 04:01:33 GMT
    Server: Apache/1.3.20 (Linux/SuSE) mod_perl/1.26 PHP/4.2.1 mod_ssl/2.8.4 OpenSSL/0.9.6b
    Content-Type: text/html

    Die Site, wo es läuft ist:
    http://www.organisationsberatung-rosenthal.de

    HTTP response headers received from server:

    HTTP/1.0 200 OK
    Connection: close
    Date: Sun, 04 Aug 2002 04:02:46 GMT
    Accept-Ranges: bytes
    Server: Apache/1.3.26 (Unix)
    Content-Length: 10579
    Content-Type: text/html
    ETag: "16b8542-2953-3d499899"
    Last-Modified: Thu, 01 Aug 2002 20:22:49 GMT
    ^^^^^^^^^^^^^^

    Ich bilde mir ein, dass eigentlich auf beiden das
    Gleiche steht, oder? Wer kann mir helfen?

    http://www.schroepl.net/cgi-bin/http_trace.pl

    Viele Grüße
          Michael

    P.S.: Daß der SuSE-Server nicht mal eine Content-Length
          liefert, finde ich schon etwas bedenklich.
          Außerdem ist der letztgenannte Apache 1.3.26
          absolut aktuell, während der 1.3.20 für den einen
          oder anderen Angriff etwas verwundbarer wäre.
          Wenn Du also die Wahl hast ...

  3. Danke, Euch beiden, das hilft mir sehr weiter. Habe mich jetzt an den Provider gewandt, da es ja ganz offensichtlich am http-Header liegt. Zwar habe ich von Webservern kaum Ahnung, aber ich finde es trotzdem erstaunlich, warum einer einen Server so einrichtet, dass LastModified nicht mitübertragen wird.

    Hitzige Grüße

    Petra

    1. Hallo Petra,

      ich finde es trotzdem erstaunlich, warum einer einen
      Server so einrichtet, dass LastModified nicht
      mitübertragen wird.

      ich auch. Denn mit diesem Datum als Hinweis überprüft
      der Browser, ob er seinem Cache-Inhalt trauen darf.

      Wenn ein Zugriff auf eine im Cache verfügbare Seite
      anfällt, dann sendet der Browser einen "conditional
      get" an den Server, in welchem er das LastModified-
      Datum mit sendet; stimmt dieses mit dem Datum auf dem
      Server überein, dann darf der Server mit "HTTP 304 -
      Deine Cache-Daten sind noch gültig" antworten, statt
      die komplette Seite noch einmal zu senden.
      Der Server wird also durch das Weglassen des
      LastModified-Headers für viele Besucher langsamer.

      Du siehst, das Problem geht weit über Deine
      JavaScript-Funktion hinaus ...

      Viele Grüße
            Michael