Cache für bestimmte Verzeichnisse abschalten

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Cache für bestimmte Verzeichnisse abschalten

Beitrag von Helmut »

Hallo,

gibt es eigentlich eine Möglichkeit, die Cache Funktion für bestimmte Verzeichnisse/Dateien zu deaktivieren?

Hintergrund ist, dass der AjaxChat viele Dateien im Cache Verzeichnis anlegt, nur solche sql_......xyz.php Dateien, aber davon am Tag gerne mal mehr als 5000 Stück. Ich würde nun ganz gern die Cache Funktion für das Verzeichnis .../chat/* abschalten damit dort keine Einträge vom Chat mehr kommen. Den Chat habe ich innerhalb des root vom Forum gelegt, so wie es in der Anleitung steht. Ich habe fast den Eindruck dass wenn mehrere Leute im Chat sind, der Server ausgebremst wird.

Den gleichen Chat habe ich schon seit 3 Jahren im 2.0.3 er Forum gehabt, da gab es diese Probleme nicht, vermutlich weil keine Cache Funktion da war.


Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Cache für bestimmte Verzeichnisse abschalten

Beitrag von BNa »

Benenne das Cache Verzeichnis des Ajax Chats einfach um oder entferne die Schreibrechte via FTP für das entsprechende Verzeichnis.
Sollte reichen. Aus den reinen Dateien lässt sich nämlich schwer ersehen, wie gecached wird.

Wenn das nicht gelingt (sollte aber), verlinke mal bitte einer dieser gecachten Dateien (des Chats):
sql_......xyz.php
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: Cache für bestimmte Verzeichnisse abschalten

Beitrag von Helmut »

Hallo BNa,
BNa hat geschrieben:Benenne das Cache Verzeichnis des Ajax Chats einfach um oder entferne die Schreibrechte via FTP für das entsprechende Verzeichnis.
Sollte reichen.
der Chat hat selber kein eigenes cache Verzeichnis, sondern es wird alles in .../cache/ geschrieben.

Ich habe mir nochmal ein paar der sql_ Dateien angeschaut, vom Chat selber ist anscheinend nichts dabei, dafür wird aber die index.php Seite vom Forum gecached, von der auch der Chat aufgerufen wird. Scheint so als ob jedesmal wenn der Chat aktualisiert wird, auch die index Seite vom Forum in den Cache wandert.


Kannst ja mal bei dir den Chat testweise einbauen, dann siehst was im Cache landet.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Cache für bestimmte Verzeichnisse abschalten

Beitrag von BNa »

Ich selbst habe den phpbb3-Cache seit Jahren deaktiviert.
Könnte sein, das es auch für Dich die einzige Möglichkeit ist.
Oder Du ersetzt alle $db->sql_query_limit()-Anweisungen in der index.php,
die alle vier Parameter aufweisen > $db->sql_query_limit($query, $total, $offset, cache_ttl);
(siehe dazu: https://wiki.phpbb.com/Dbal.sql_query_limit ) gegen das aus:

Code: Alles auswählen

// $db->sql_query_limit($query, $total, $offset, cache_ttl);
$db->sql_query_limit($query, $total, $offset, false); 
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: Cache für bestimmte Verzeichnisse abschalten

Beitrag von Helmut »

Hallo BNa,

ich habe die Ursache gefunden, war der AD Mod den ich eingebaut hatte. Der ist so gestaltet dass bei jedem Seitenaufruf fünf zufällig gewählte Banner auf jeder Seite bei mir angezeigt werden und da waren mehrere Stellen mit $result = $db->sql_query($sql, 3600); drinnen, also mit Cache. Nach Abänderung auf $result = $db->sql_query($sql); war das Problem behoben.

So ganz habe ich den Zusammenhang noch nicht kapiert wie das genau mit dem Cache funktioniert und wann genau was in den cache Ordner wandert.


Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Cache für bestimmte Verzeichnisse abschalten

Beitrag von BNa »

Helmut hat geschrieben:$result = $db->sql_query($sql, 3600);
Ahja, hab garnicht mehr die klassische $dbal Cache-Variante > $db->sql_query($sql_ergebnis_summe, $cache_zeit_in_milllisekunden); im Kopf gehabt.
In dem Falle meinte ich natürlich alle $dbal Cache-Varianten. Super, das es nun un-zu-pfropfend funktioniert :grin:
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“