Ankündigung

Einklappen
Keine Ankündigung bisher.

nginx cache abschalten und manchmal zusätzliche Header senden

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    nginx cache abschalten und manchmal zusätzliche Header senden

    Hallo!

    Man kann den nginx-Server-Cache in den 64-Bit-Tarifen ja über einen Eintrag in der htaccess abschalten (s. https://www.df.eu/de/support/df-faq/...tory/#c24136):
    Code:
    Header always set Cache-Control: s-maxage=0
    Dies möchten wir auf allen unseren Seiten haben.

    Nun habe ich das Problem, dass ich manchmal auf einigen Seiten einen zusätzlichen Cache-Control-Header senden muss. Dies entscheidet sich aber - unabhängig von z.B. dem Dateinamen der aufgerufenen Seite - im PHP, dort steht dann etwas wie:
    PHP-Code:
    if ($dataHasChanged) {
    header('Cache-Control: no-store, no-cache, must-revalidate, s-maxage=0');

    Das Problem ist, dass der in PHP-gesetzte Header aber niemals nicht im Browser ankommt, weil er durch den in der htaccess gesetzten Header überschrieben wird.
    Es kommt also immer nur Cache-Control: s-maxage=0, egal, was ich im PHP setze.

    Was für Lösungsmöglichkeiten habe ich hier? Ideal wäre, wenn ich das komplett in PHP machen könnte:
    PHP-Code:
    if (dataHasChanged) {
    header('Cache-Control: no-store, no-cache, must-revalidate, s-maxage=0'); // Schalte nginx-Cache aus UND sende weitere Cache-Controls
    }
    else {
    header('Cache-Control: s-maxage=0'); // Schalte nur nginx-Cache aus

    aber wenn ich die Doku richtig verstehe, MUSS der Befehl in der htaccess liegen, damit der nginx-Cache auch wirklich abgeschaltet wird.

    Wie kann ich das lösen?
    Zuletzt geändert von Cangooou; 15.09.2021, 14:03.

    #2
    Ah, die Technik konnte mir weiterhelfen:

    Code:
    Header set Cache-Control: s-maxage=0
    genügt schon, um von PHP aus Header hinzuzufügen.

    Kommentar


      #3
      Hallo Cangooou,

      danke für die Aufklärung. Dies hilft dann bestimmt nachfolgenden Lesern mit Fragen in die Richtung.

      Mit freundlichen Grüßen

      Nils Dornblut
      Blog - Facebook - Twitter
      Communitybetreiber: domainfactory GmbH
      Impressum / Pflichtangaben

      Kommentar

      Lädt...
      X