josh: Little CMS - Caching - ConfigFiles - Languages

Beitrag lesen

Hallo,

Beim Cachen geht es mir vorallem um so Seiten wie Forenübersichten, Blogs etc. die sonst unnötig mehrmals Stündlich gerendert werden müssen.

Verstehe ich jetzt zwar nicht ganz (wieso stündlich?) ;-), aber ich denke du willst einfach Seiten, die sich nicht häufig/gar nicht ändern, quasi vorgefertigt abspeichern. Entweder du suchst nach einem vorgefertigten Script oder programmierst es selbst (viel mehr bleibt auch nicht übrig ;-). Zufälligerweise habe ich erst vor kurzem so etwas programmiert, ist aber noch nicht fertig. Es kommt jetzt aber drauf an, wann die Seite neu erzeugt (gecacht) werden soll. Liegen die Daten in einer Datenbank und besitzen sie ein Datum/Timestamp, kann zum Beispiel nachgeprüft werden, ob die gecachte Datei noch aktuell ist.

Apropos Cookie, Session, GET-Parameter etc. Was ist denn die günstigste Lösung, wenn man Einstellungen "speichern" möchte. Es können unterschiedlich viele sein etc. bisjetzt geht das nur für registrierte Nutzer, da wird ein Array dementsprechend in einer Datenbank gespeichert und entsprechend wieder ausgelesen.
Was wäre da sinnvoll?
Mit session-id Arbeiten und für session-ids einen Datenbank-Configurationseintrag anlegen. Hat der User Cookies erlaubt kann beim nächsten Aufruf diese Configurations-ID wieder geladen werden?

Also da es die Möglichkeit gibt sich anzumelden (nachdem man sich registriert hat) würde ich Sessions verwenden, allerdings die Einstellungen des Benutzers direkt in der Session speichern. Wenn sich ein Benutzer anmeldet, werden seine Einstellungen einmal geladen und in der Session gespeichert.

Ja das wird schon über mod_rewrite geregelt. Ich meinte vielmehr z.B. bei Smarty kennt man ja diese languag-confs mit den jeweiligen Werten für die Sprachen, die dann im Template verwendet werden ... Sollte man sowas in einer Datenbank-tabelle speichern und über bestimmte Syntax innerhalb einer Seite eben verfügbar machen? Oder wirklich für jeden Sprache jede Seite komplett anpassen z.B. Bei Foren, wo wenig "fester" Text ist, wäre ersteres einfacher denke ich.

Ich kenne mich leider mit Smarty nicht aus, verstehe aber was du meinst. Eine schwierige Frage. Ich würde bei Texten, der in den Templates fest drin ist, jeweils eine eigene Seite machen. Für Texte, die eine dynamische Grundlage haben (Beispiel: Alle 64 Kommentare anzeigen / Show all 64 comments) wäre so eine Datenbanktabelle oder Sprachendatei mit einem Array nicht schlecht.
So ganz sicher bin ich mir aber nicht.

Accept-Language header? Bisjetzt regel ich das über eine definierbare Default-Language. Aber das klingt interessant?

http://tools.ietf.org/html/rfc2616#section-14.4 Nur so als Anregung. Müsste man halt parsen (ist nicht ganz leicht wegen so Sachen wie die verschiedenen englischen Sprachtypen).

Gruß

Gruß