Peter: Active Desktop

Hallo, Vielleicht kann mir ja hier jemand helfen. Ich möchte gerne ein Bild einer Web-Cam auf meinem Desktop (Win2000) darstellen. Dazu verwende ich folgende HTML Datei:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
       "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="refresh" content="300">
</head>
<body>
<p><img src="http://www.soelden.com/images/news/livecam2_r.gif_shot.jpg" width="352" height="288" vspace="0" hspace="0"</p>
</body>
</html>

Leider wird zwar die HTML Datei alle 300s "refreshed", daß eigentliche Bild wird aber aus dem Cache gelesen und damit nicht aktualisiert. Nur ein manueller Refresh bringt auch ein Update des Bildes.
Hat jemand eine Lösung dazu???

Gruß,

Peter

  1. Hallihallo!

    Hab´s nicht getestet, aber vielleicht hilft Dir

    <meta http-equiv="cache-control" content="no-cache">

    weiter?

    Viele liebe Grüße,
    Der Dicki

    1. Hi Dicki,

      geht leider nicht :-((

      1. na, dann such doch mal im selfhtml nach anderen meta-anweisungen um den cache zu umgehen!!!
        http://selfhtml.teamone.de/html/kopfdaten/meta.htm

        außerdem mußt du online sein, wenn du auf eine http-resource zugreifen willst

        Odium

        1. Hi Odium,

          na, dann such doch mal im selfhtml nach anderen meta-anweisungen
          um den cache zu umgehen!!!

          angenommen, es gäbe eine solche Direktive:
          Wie möchtest Du sie in die Bild-Datei hinein schreiben?

          Viele Grüße
                Michael

      2. Hi,

        das kann auch eigentlich nicht gehen, weil die Meta-Angabe doch ein HTTP-Äquivalent für den Request auf die HTML-Datei ist.
        Du müßtest dem Bild selbst einen entsprechenden Header verpassen.
        Du kannst z.B. ein PHP-Skript aufrufen, was beispielsweise wie folgt aussehen könnte:

        <?php
        /*
            webcambild.php
        */
        header("Content-Type: image/jpeg");
        header("Cache-control: no-cache, must-revalidate");
        header("Pragma: no-cache");
        header("Expires: Tue, 01 Jan 2002 15:30:00 GMT");
        fpassthru("pfad/zu/deinem/webcambild");
        ?>

        Dieses Skript würdest Du dann z.B. mit <img alt="" src="http://deinserver/webcambild" width="x" height="y" /> in die Seite einbinden.
        In Perl geht das ganze entsprechend, aber die Syntax hab ich jetzt nicht so im Kopf.

        Schönen Gruß

        Rainer

        1. Hi Rainer,

          Du müßtest dem Bild selbst einen entsprechenden Header verpassen.
          Du kannst z.B. ein PHP-Skript aufrufen ...

          Alternative für Nicht-Programmierer:
          Den Server so konfigurieren, daß er das selber tut.

          Lesetips:
             http://httpd.apache.org/docs/mod/mod_expires.html
             http://httpd.apache.org/docs/mod/mod_headers.html

          Viele Grüße
                Michael

  2. Hallo,

    eventuell mal die URL beim refresh mit angeben?

    <meta http-equiv="refresh" content="300; URL=http://www.soelden.com/images/news/livecam2_r.gif_shot.jpg">

    Gruß

    Axel

    1. Hallo,

      eventuell mal die URL beim refresh mit angeben?

      <meta http-equiv="refresh" content="300; URL=http://www.soelden.com/images/news/livecam2_r.gif_shot.jpg">

      sorry, Denkfehler. Das kann nicht gehen. Dann gibts gar keinen refresh mehr.

      Tschuldigung

      Axel

  3. Hallo,

    ohne mich jetzt näher mit der Gesamtsituation zu befassen würde ich sagen, dass es was bringen würde, wenn du an den URL etwas dranhängst, was sich ständig ändert.

    Beispiel:

    <img src="bildwoauchimmer.jpg?denkdirwasaus" width="352" height="288" vspace="0" hspace="0">
    <

    wie du das jetzt umsetzt und was du da an den URL hängst bleibt dir überlassen. Vielleicht einen Timestamp o.a..

    hth
    bernd

  4. Danke an alle für die Tipps; leider funktioniert es so alles nicht. Das Bild kommt von einer bestehenden Website. Ich habe also keinen Zugriff auf den Server etc.. Es muß doch eine Möglichkeit geben, den Refresh, den ich mit dem Browser ausführe, auch irgendwie (vielleicht durch ein Skript?) auszulösen!?!?

    Gruß,

    Peter