Zum Inhalt springen

Seiten anhand eines URL-Abschnitts vom Cache ausschließen

Erstellt am 16. Februar 2011 · 2 Antworten · letzte Antwort am 17. Februar 2011

Tags: Frage

Unbekannter Benutzer ·

Hallo,
ich habe zu folgendem Problem bisher leider keine Infos finden können, bestimmt finde ich Sie hier.

Ich verwende auf einer TYPO3-Website die Extension eepcollect. Mit dieser Extension kann ein Websitebesucher Seiten auf einem virtuellen Merkzettel ablegen. Sobal der User bei einer Seite den Link 'Seite merken' anklickt, wird diese Seite neu aufgerufen (?) und die URL beispielsweise durch folgenden Wert ergänzt: ?tx_eepcollect_pi1[prozess]=add&tx_eepcollect_pi1[pid]=157&tx_eepcollect_pi1[ctrl]=1297878606&cHash=bb66806c30bcd0a819baaed82b88dac1

Zum Problem:
Eine Seite wird durch einen Klick auf 'Seite merken' mit der erweiterten URL neu gecachet. Dadurch befindet sich die Seite mehrfach im TYPO3 Cache und in der Datenbank, was wiederum Speicherplatz benötigt. Ich bekomme dann ca. alle 14 Tage eine E-Mail von mittwald, dass der Speicherplatz überschritten wurde.

Gibt es eine Möglichkeit, Seiten anhand der URL vom TYPO3-Caching auszuschließen?
Ich stell mir das in etwas so vor:
Wenn in der URL '?tx_eepcollect_pi1' enthalten ist, soll die Seite nicht gecacht werden.

Muss dies in der Extension selbst definiert werden, oder per TypoScript?

Gibt es einen anderen Lösungsansatz?
Ich habe schon darüber nachgedacht, täglich den Seitencache zu löschen und durch ein Script wieder neu zu generieren.

Bitte nicht den Hinweis bringen, dass ich einfach mehr Speicherplatz buchen soll, dass ist für mich keine Alternative.

Wenn weitere Einzelheiten benötigt werden, gebt Bescheid.

Vielen Dank.

jenses ·

Den Cache kannst du per Typoscript-Condition abschalten:

# wenn tx_eepcollect_pi1[prozess] nicht gesetzt:
[globalVar = GP:tx_eepcollect_pi1|prozess = ]
# mache nichts
[else]
# wenn tx_eepcollect_pi1[prozess] gesetzt, deaktiviere Seitencache:
page.config.no_cache = 1
[globalVar]
Unbekannter Benutzer · · Beste Antwort

Danke jenses für die schnelle und kompetente Antwort. Ich hab's gerade eingebaut und getestet und es scheint genau das zu machen was ich will.

Dann werde ich mal schauen ob sich dadurch mein Speicherplatz-Problem umgehen lässt.

Nochmal vielen Dank.

Nur aus Interesse, kann man sowas in der Art auch für eine robots.txt-Datei machen um Seiten mit einem bestimmten URL-Abschnitt für Suchmaschinen auszuschließen?

So in der Art:
Disallow: (hier darf was stehen) *.html?tx_eepcollect_pi1[prozess]=* (hier darf was stehen)