emu: Cache bei Zufallsgeneratoren unter selbem Dateinamen

Hallo!

Ich habe mit SSI einen simplen Zufallsgenerator gebaut, der aus 60 Dateien je nach Sekunde jeweils eine auswählt. Leider habe ich keine Möglichkeit gefunden, mit SSI Header-Redirects zu verwenden und so habe ich die Dateien einfach mit include eingebunden und auf der Seite einen Link zur selben Seite gesetzt, damit man ein weiteres zufälliges Zitate bekommt. Das funktioniert mit IE und Mozilla ganz gut, nur der cachingfreundliche Opera weigert sich, die Datei neu zu laden und besteht auf einen Reload. Gibt es eine Möglichkeit, das zu umgehen?

emu

  1. Hallo.

    Das funktioniert mit IE und Mozilla ganz gut, nur der cachingfreundliche Opera weigert sich, die Datei neu zu laden und besteht auf einen Reload. Gibt es eine Möglichkeit, das zu umgehen?

    Hast du schon versucht dem Link einen zufälligen Query-String (z.B. die aktuelle Zeit) mitzugeben? Dadurch sollte Opera gezwungen sein, die Seite neu zu laden, zumal sich mit mit dem Query-String ja die gesamte Seite ändern kann.

    Gruß
    Norbert

  2. Hi emu,

    einen Link zur selben Seite gesetzt, damit man ein weiteres zufälliges Zitate bekommt.

    mit welchen caching-feindlichen HTTP-Headern wird Deine SSI-Seite ausgeliefert?

    Viele Grüße
          Michael

    --
    T'Pol: I apologize if I acted inappropriately.
    V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
    (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
     => http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|
    Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.
    1. Hallo!

      einen Link zur selben Seite gesetzt, damit man ein weiteres zufälliges Zitate bekommt.
      mit welchen caching-feindlichen HTTP-Headern wird Deine SSI-Seite ausgeliefert?

      Keine besonderen, nehme ich an. Gibt es HTTP-Header, die ich mit .htaccess beeinflussen kann, die Cachen verhindern?

      emu

      1. Hallo!

        einen Link zur selben Seite gesetzt, damit man ein weiteres zufälliges Zitate bekommt.
        mit welchen caching-feindlichen HTTP-Headern wird Deine SSI-Seite ausgeliefert?
        Keine besonderen, nehme ich an. Gibt es HTTP-Header, die ich mit .htaccess beeinflussen kann, die Cachen verhindern?

        Bzw spricht etwas gegen:
        Header set cache-control: no-cache
        ?

        emu

        1. Hi emu,

          Bzw spricht etwas gegen:
          Header set cache-control: no-cache

          nur, daß es HTTP/1.1 only ist und von HTTP/1.0-Clients nicht verstanden wird.

          mod_expires würde das Äquivalent hierzu in beiden 'Sprachen' generieren.

          Viele Grüße
                Michael

          --
          T'Pol: I apologize if I acted inappropriately.
          V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
          (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
           => http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|
          Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.
          1. Hallo!

            Bzw spricht etwas gegen:
            Header set cache-control: no-cache
            nur, daß es HTTP/1.1 only ist und von HTTP/1.0-Clients nicht verstanden wird.

            Durch meine Subdomainkonstruktion dürften die Seiten damit ohnehin nicht funktionieren, damit könnte ich also leben. Ich habe folgende Konstruktion in die .htaccess gebastelt:

            Options +MultiViews
            <Files *.shtml>
            Header set cache-control: no-cache
            </Files>

            Mozilla und Internet Explorer machen weiterhin das, was sie sollen, Opera ladet die Datei auch neu, wendet das aber das Cachingverbot auch auf das Stylesheet und die Grafiken auf der Seite an und sendet eine Anfrage, die natürlich mit einem 304er beendet wird. Damit könnte ich prinzipiell leben, aber vielleicht kann man auch da etwas machen...

            emu
            [sich entschuldigend, nicht vorher nachgeschaut zu haben]

      2. Hi emu,

        Keine besonderen, nehme ich an.

        warum schaust Du nicht nach?

        Gibt es HTTP-Header, die ich mit .htaccess beeinflussen kann, die Cachen verhindern?

        In dieser allgemeinen Form kann die Frage nur mit "nein" beantwortet werden. Cachen von Content eines _unveränderlichen_ URL ist nichts, was der Server zuverlässig verhindern kann.

        Wenn Du hinzufügst "gegenüber Clients, die sich an die Beachtung des HTTP-Protokolls gebunden fühlen", dann könnte daraus ein "ja" werden, wenn Du den mittleren Teil Deiner Aussage entfernst _und_ diese Clients korrekt konfiguriert sind. Der Server hat in solchen Fällen nur beratende Funktion.

        Welche Module auf Deinem Server installiert sind und welche AllowOverride-Einstellungen dort gelten, kann ich natürlich nicht wissen.

        Dein Freund ist in diesem Falle:
             http://httpd.apache.org/docs/mod/mod_expires.html

        Viele Grüße
              Michael

        --
        T'Pol: I apologize if I acted inappropriately.
        V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
        (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
         => http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|
        Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.