Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 10. September 2015 12:47

faglork
arbeitet mit CMS/ms
Ort: Fränkische Schweiz
Registriert: 15. Dezember 2010
Beiträge: 1.152
Webseite

Problem mit den cache-Einstellungen

Moinsen!

Egal was ich wo setze, ob nun in htaccess

[== yxz ==]
  <filesmatch "\.(html|htm)$">
   Header set Cache-Control "max-age=600, private, must-revalidate"
   </filesmatch>

oder im Backend bei den Browser-Cache-einstellungen
Verfallszeit des Browser-Zwischenspeichers (in Minuten): 10

ich bekomme grundsätzlich imm HEADER ein
Cache-Control: public, max-age=10800

Ich habe mir daraufhin mal die Websites im Show-Off angesehen.  Bei allen Stichproben - ausgenommen denjenigen die auf no-cache eingestellt sind - ist es dasselbe.

Wo kommen diese 10800 Sekunden her?

Wie sieht das bei euren Seiten aus?

Servus,
Alex

Beitrag geändert von faglork (10. September 2015 12:47)

Offline

#2 10. September 2015 15:55

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Problem mit den cache-Einstellungen

In den Source von CMSMS hab ich nix gefunden.

Aber dies könnte hinkommen  roll

https://php.net/manual/en/function.session-cache-limiter.php#82174 schrieb:

The actual headers that are set using the values described above are:

public:
    Expires: pageload + 3 hours
    Cache-Control: public, max-age=10800
   
private:
    Expires: Thu, 19 Nov 1981 08:52:00 GMT
    Cache-Control: private, max-age=10800, pre-check=10800
   
nocache:
    Expires: Thu, 19 Nov 1981 08:52:00 GMT
    Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    Pragma: no-cache
   
private_no_expire:
    Cache-Control: private, max-age=10800, pre-check=10800
   
Regarding other settings mentioned by some, those just don't do anything. Check the source of PHP, in ext/session/session.c -- the above values are all that actually do anything. Other values, or an emtpy string, result in no cache-limiting headers being set at all.

Offline

#3 24. September 2015 12:30

faglork
arbeitet mit CMS/ms
Ort: Fränkische Schweiz
Registriert: 15. Dezember 2010
Beiträge: 1.152
Webseite

Re: Problem mit den cache-Einstellungen

Danke!

Das könnte das Problem zu sein.

Aber ... es kann doch nicht sein, dass praktisch NIEMAND das bisher bemerkt hat?? Ausser in diesem einen einzigen Post?

Und bei anderen CMS gehts ja auch. Siehe Wordpress: Da funktioniert das doch.

http://www.wiesentbote.de steht auf 3600 ... und das wird in der .htaccess konfiguriert, und funzt perfekt:

ExpiresByType text/html "access plus 1 hour"

Also muss es doch eine Möglichkeit geben?

Sevus,
Alex

Offline

#4 24. September 2015 21:41

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Problem mit den cache-Einstellungen

faglork schrieb:

Und bei anderen CMS gehts ja auch. Siehe Wordpress: Da funktioniert das doch.

Ja, ich weiß, dass es funktioniert - aber aus einem natürlichen Reflex heraus weigert sich mein Inneres, Wordpress als CMS anzuerkennen  big_smile  cool  angel .

Nee, mal im Ernst - Wordpress ist nicht wirklich mein Schlachtfeld, aber soweit ich bei der Schnellsuche sehen konnte, verwendet WP im Auslieferungszustand keine Sessions.

Auch das Thema Server ist nicht ganz meins ... aber einfach mal laut gedacht (und daher spekulativ):

Als erstes wird beim Aufruf einer Domain die htaccess gelesen. Da stehen deine Expires-Werte drin - so weit, so klar.

Dann aber kommt PHP ins Spiel - bei Wordpress gibt es diesbezüglich intern keine Parameter, also bleibt der Wert aus der htaccess erhalten.

Anders bei CMSMS - da wird eine Session gestartet, weshalb

https://secure.php.net/manual/de/function.session-cache-limiter.php schrieb:

Zu Beginn einer Anfrage wird die Cacheverwaltung auf den voreingestellten Wert zurückgesetzt,

also nach obigem Beitrag #2 auf 10800 Sekunden, womit der Wert aus der htaccess überschrieben wird.

Diese These ließ sich überprüfen, indem man die Sessions für das CMSMS Frontend deaktiviert und dann noch mal die Werte kontrolliert, die dabei unterm Strich ankommen.

Offline

#5 04. Oktober 2015 13:37

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Problem mit den cache-Einstellungen

Ach Alex, Gott schütze deinen Optimismus! Hast du dein eigenes Posting bereits vergessen hmm?

Die schauen auf den Nickname und/oder die IP, und das war's ...

By the way - funktioniert es denn mit der V2?

Dort ist der problematische Teil in der include.php auskommentiert und die neue Lösung nach /lib/misc.functions.php umgruppiert worden.

Aber mal laut gedacht - nach vorstehendem (vollständigerem wink) Zitat

Zu Beginn einer Anfrage wird die Cacheverwaltung auf den voreingestellten Wert zurückesetzt, der in session.cache_limiter gespeichert ist. Daher müssen Sie session_cache_limiter() bei jeder Anfrage aufrufen (und zwar bevor session_start() aufgerufen wird).

müsste sich doch der Wert in der config.php "voreinstellen" lassen?

[== PHP ==]
ini_set("session.cache_limiter", "...")
ini_set("session.cache_expire", "...")

Offline