Footnotes

Third Party Plugins to CMSimple - how to install, use and create plugins

Moderator: Tata

wsim123
Posts: 63
Joined: Thu Feb 19, 2015 4:44 pm

Re: Footnotes

Post by wsim123 » Thu May 28, 2015 12:59 pm

cmb wrote:
wsim123 wrote:Ich habe den Ansatz einer einfachen wenn auch nicht finalen Lösung zum Chaching gefunden.

http://www.askapache.com/hacking/speed- ... ntrol.html (Caching with both mod_expires + mod_headers) . Zumindest lässt sich das Nachladen so beschleunigen.
Okay, clientseitiges Caching ist natürlich auch eine Option.
wsim123 wrote:Header set Cache-Control "max-age=500"
Also maximal für etwa 8 Minuten. Das hilft natürlich nur, wenn der Besucher die gleiche Seite beim selben Besuch mehrfach aufruft. Aber gut, dafür gehen Änderungen auch nicht unter.
wsim123 wrote:ExpiresDefault A300
Das sind, soweit ich es überblicke, aber nur noch 5 Minuten.
wsim123 wrote:Das könnte man in das nächste Update einbauen, das doch wohl bis Jahresende erscheint ?
Zumindest bisher haben wir ganz bewusst keine .htaccess im Installationsverzeichnis ausgeliefert. Bei einer Erstinstallation vielleicht kein großes Problem, aber bei Updates muss immer wieder nachgearbeitet werden, da viele Webmaster dort auch sehr individuelle Einstellungen vornehmen. Ein weiteres Problem ist, dass mod_rewrite. mod_expires und mod_headers vorausgesetzt werden; was passiert, wenn eines der Module nicht verfügbar ist – ich vermute ein "500 Internal Server Error" (also leeres Browserfenster).

Aber eigentlich sehe ich auch keinen besonderen Grund überhaupt eine .htaccess auszuliefern. Die kann sich der Webmaster doch selbst erstellen – nach Bedarf und Möglichkeiten.

Evtl. auch interessant: ein Prototyp eines Caching Plugins.
-------------------------------------------------------------------------------------------------------------------------
Den internal server error kann man ja ausprobieren und den Eintrag aus den drei weglassen.
Das Cache XH auf http://3-magi.net/userfiles/downloads/C ... .0dev1.zip liegt leider nicht mehr dort - würde
mich aber sehr interessieren

Der Nachteil des obigen Eintrags in die htaccess ist momentan, dass bei Änderungen diese erst nach Minuten wirksam werden. Man muss es dann momentan solange per ftp deaktivieren. Das Laden von Bildern ist dreimal so schnell (natürlich beim Blättern und neuladen) - völlig unverzichtbar ohne cache (beim lahmen Wordpress gibt es nicht ohne Grund fast 10 Module)
Wenn mir jemand sagen könnte, welches php-file im CMS in die htaccess schreibt - die mod für UTF 8 schreibt das System bei mir nachträglich rein, wenn ich eine leere htaccess ins Verzeichnis lege , - würde ich mich um eine Plugin bemühen(Cache_XH-1.0dev1.zip könnte man ins wiki legen).
Last edited by wsim123 on Thu May 28, 2015 5:44 pm, edited 1 time in total.

Holger
Site Admin
Posts: 3470
Joined: Mon May 19, 2008 7:10 pm
Location: Hessen, Germany

Re: Footnotes

Post by Holger » Thu May 28, 2015 1:45 pm

Ich verstehe das jetzt nicht so ganz:
wsim123 wrote:Das Laden von Bildern ist dreimal so schnell - völlig unverzichtbar ohne cache (beim lahmen Wordpress gibt es nicht ohne Grund fast 10 Module)
Beim ersten Download müssen die Bilder geladen werden, so oder so. Danach sollten sie doch im lokalen Cache des Browsers liegen. Das sollte der Browser doch von ganz alleine schaffen -- dachte ich bisher. Wozu braucht man, im Bezug zu Bildern, denn da ein Cache-Plugin? Und wie könnte das Plugin das Laden der Bilder noch weiter beschleunigen???

Ich habe mich vor einiger Zeit auch mit dem Thema beschäftigt und mir kam da wieder das alt bekannte WP-Plugin "Total Cache" in den Sinn. Das damals dort enthaltene Tool zum Minifizieren, Komprimieren und serverseitigem Cachen der Assets (zumindest CSS und JS) habe ich mal für CMSimple realisiert (allerdings ohne cachen der generierten HTML-Seiten):
http://holgerirmler.de/cnc .Ich wollte schon längst etwas dazu schreiben, aber es fehlt mir einfach an der Zeit dazu :cry: .
Allerdings ist die Sache mit den heutigen Möglichkeiten des XH_Cores auch eher eine Bastellösung. Es funktioniert nur mit Hilfe der neu eingeführten userprelude.php und Output-Buffering.
Leider kann ich so nicht (sicher) feststellen, ob das CMS im Admin-Modus läuft, denn dort gibt es noch einige Probleme mit der Lösung...

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Footnotes

Post by cmb » Thu May 28, 2015 4:17 pm

wsim123 wrote:Den internal server error kann man ja ausprobieren und den Eintrag aus den drei weglassen.
Die Vorstellung ein "leicht zu installierendes CMS" auszuliefern, bei dem der Benutzer erst mal in einer .htaccess rumprobieren muss, bis es läuft, finde ich nicht so prickelnd.
wsim123 wrote:Der Nachteil des obigen Eintrags in die htaccess ist momentan, dass bei Änderungen diese erst nach Minuten wirksam werden.
Das könnte daran liegen, dass der Webserver die .htaccess Dateien cache't, damit sie nicht bei jedem Request gelesen (und geparst) werden müssen.
wsim123 wrote:Wenn mir jemand sagen könnte, welches php-file im CMS in die htaccess schreibt - die mod für UTF 8 schreibt das System bei mir nachträglich rein, wenn ich eine leere htaccess ins Verzeichnis lege
CMSimple_XH selbst schreibt nicht in irgendeine .htaccess. Welche "mod für UTF 8" gemeint ist, weiß ich nicht.
wsim123 wrote:Das Cache XH auf http://3-magi.net/userfiles/downloads/C ... .0dev1.zip liegt leider nicht mehr dort - würde mich aber sehr interessieren
Das hatte ich versehentlich verschoben; nun sollte der Link wieder funktionieren.
Holger wrote:Ich verstehe das jetzt nicht so ganz:
wsim123 wrote:Das Laden von Bildern ist dreimal so schnell - völlig unverzichtbar ohne cache (beim lahmen Wordpress gibt es nicht ohne Grund fast 10 Module)
Beim ersten Download müssen die Bilder geladen werden, so oder so. Danach sollten sie doch im lokalen Cache des Browsers liegen. Das sollte der Browser doch von ganz alleine schaffen -- dachte ich bisher. Wozu braucht man, im Bezug zu Bildern, denn da ein Cache-Plugin? Und wie könnte das Plugin das Laden der Bilder noch weiter beschleunigen???
Wenn der Server nicht falsch konfiguriert ist, dann sollte er beim Ausliefern von statischen Bildern auch entsprechende Header senden, so dass der Browser das Bild cache't. Wenn dann ein bereits gecache'tes Bild erneut abgerufen wird, sendet der Browser dann i.d.R. einen If-Modified-Since Header (und ggf. weitere bzgl. des Cachings), und der Server antwortet mit 304, wenn das Bild noch aktuell ist, anstatt das Bild erneut auszuliefern. So spart man zwar nicht den erneuten Request, aber zumindest Bandbreite. Man kann natürlich dem Browser sagen, er solle gar nicht mehr nachfragen, aber dann wird ein geändertes Bild auch nicht angezeigt, und HTTP 2.0 gewinnt ja allmählich an Verbreitung, so dass man da nicht mehr allzu viel spart.
Holger wrote:Allerdings ist die Sache mit den heutigen Möglichkeiten des XH_Cores auch eher eine Bastellösung. Es funktioniert nur mit Hilfe der neu eingeführten userprelude.php und Output-Buffering.
Leider kann ich so nicht (sicher) feststellen, ob das CMS im Admin-Modus läuft, denn dort gibt es noch einige Probleme mit der Lösung...
Na ja, da 1.7 in Entwicklung ist, wären entsprechende Änderungen sicher möglich. Mach doch einfach mal konkrete Vorschläge, oder biete die derzeitige Lösung öffentlich einsehbar an. Eine solche Caching-Lösung fände ich sehr nützlich für CMSimple_XH, und fände es gut, wenn es bei 1.7 eingebaut werden könnte.
Christoph M. Becker – Plugins for CMSimple_XH

wsim123
Posts: 63
Joined: Thu Feb 19, 2015 4:44 pm

Re: Footnotes

Post by wsim123 » Thu May 28, 2015 5:46 pm

cmb wrote:
wsim123 wrote:Wenn mir jemand sagen könnte, welches php-file im CMS in die htaccess schreibt - die mod für UTF 8 schreibt das System bei mir nachträglich rein, wenn ich eine leere htaccess ins Verzeichnis lege
CMSimple_XH selbst schreibt nicht in irgendeine .htaccess. Welche "mod für UTF 8" gemeint ist, weiß ich nicht.
MaximVersion wird mit htaccess ausgeliefert!
Last edited by cmb on Thu May 28, 2015 9:28 pm, edited 1 time in total.
Reason: Zitierung korrigiert

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Footnotes

Post by cmb » Thu May 28, 2015 9:29 pm

wsim123 wrote:
cmb wrote:
wsim123 wrote:Wenn mir jemand sagen könnte, welches php-file im CMS in die htaccess schreibt - die mod für UTF 8 schreibt das System bei mir nachträglich rein, wenn ich eine leere htaccess ins Verzeichnis lege
CMSimple_XH selbst schreibt nicht in irgendeine .htaccess. Welche "mod für UTF 8" gemeint ist, weiß ich nicht.
MaximVersion wird mit htaccess ausgeliefert!
Ja, das ist so. Aber ich wüsste nicht, dass diese dann vom CMS-Script geändert würde.
Christoph M. Becker – Plugins for CMSimple_XH

wsim123
Posts: 63
Joined: Thu Feb 19, 2015 4:44 pm

Re: Footnotes

Post by wsim123 » Sun May 31, 2015 4:37 pm

cmb wrote:
wsim123 wrote:Ich habe den Ansatz einer einfachen wenn auch nicht finalen Lösung zum Chaching gefunden.

http://www.askapache.com/hacking/speed- ... ntrol.html (Caching with both mod_expires + mod_headers) . Zumindest lässt sich das Nachladen so beschleunigen.
Okay, clientseitiges Caching ist natürlich auch eine Option.
wsim123 wrote:Header set Cache-Control "max-age=500"
Also maximal für etwa 8 Minuten. Das hilft natürlich nur, wenn der Besucher die gleiche Seite beim selben Besuch mehrfach aufruft. Aber gut, dafür gehen Änderungen auch nicht unter.
wsim123 wrote:ExpiresDefault A300
Das sind, soweit ich es überblicke, aber nur noch 5 Minuten.
wsim123 wrote:Das könnte man in das nächste Update einbauen, das doch wohl bis Jahresende erscheint ?
Zumindest bisher haben wir ganz bewusst keine .htaccess im Installationsverzeichnis ausgeliefert. Bei einer Erstinstallation vielleicht kein großes Problem, aber bei Updates muss immer wieder nachgearbeitet werden, da viele Webmaster dort auch sehr individuelle Einstellungen vornehmen. Ein weiteres Problem ist, dass mod_rewrite. mod_expires und mod_headers vorausgesetzt werden; was passiert, wenn eines der Module nicht verfügbar ist – ich vermute ein "500 Internal Server Error" (also leeres Browserfenster).

Aber eigentlich sehe ich auch keinen besonderen Grund überhaupt eine .htaccess auszuliefern. Die kann sich der Webmaster doch selbst erstellen – nach Bedarf und Möglichkeiten.

Evtl. auch interessant: ein Prototyp eines Caching Plugins.
Wer so spricht kennt die "Webmaster" nicht....

Man kann auch noch anderes einbauen wie

Code: Select all

<IfModule mod_expires.c>
    ExpiresActive on
    ExpiresDefault "access plus 1 hour"  (oder)
    ExpiresDefault "access plus 4 weeks"
</IfModule>

<?php header('Expires: '.gmdate('D, d M Y H:i:s \G\M\T', time() + 3600)); ?>

# Set up caching on media files for 1 year (forever?) ---dh. im Bilderverzeichnis
<FilesMatch "\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$">
ExpiresDefault A29030400
Header append Cache-Control "public"
</FilesMatch>

cmss
Posts: 244
Joined: Mon Jan 02, 2017 6:15 pm

Re: Footnotes

Post by cmss » Sat Sep 16, 2017 9:18 am

In der userfuncs.php von Maxim 1.67 steht ein schöner Code für kurze Anker
if (!(XH_ADM && $edit)) {
$i = $s > -1 ? $s : 0;
$c[$i] = preg_replace(
'/<a([^>]*)href="?#(.*)"?/',
'<a$1href="' . $su . '#$2',
$c[$i]
);
}
Ich suche einen entsprechenden Code für kurze Links , der für individuelle Dropdowns nützlich ist(auch für Megamenüs), die sich nicht ändern, wenn sich die Baumstruktur des Pagemangers verschiebt . Es steht zur Auswahl :
Maxim: /sub1/sub2/datei.html
1.6.10: ?index.php/sub1/sub2/datei.html
1.7: ?sub1/sub2/datei
Evtl kann man dabei $sn einbinden (oder auch anders)

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Footnotes

Post by cmb » Sat Sep 16, 2017 9:45 am

cmss wrote:Ich suche einen entsprechenden Code für kurze Links , der für individuelle Dropdowns nützlich ist(auch für Megamenüs), die sich nicht ändern, wenn sich die Baumstruktur des Pagemangers verschiebt .
Das Seo_XH Plugin bietet "page-slugs", siehe https://github.com/cmb69/seo_xh/commit/ ... b402b9d26c.
Christoph M. Becker – Plugins for CMSimple_XH

cmss
Posts: 244
Joined: Mon Jan 02, 2017 6:15 pm

Re: Footnotes

Post by cmss » Sat Sep 16, 2017 4:38 pm

Ich habe mal https://de.ryte.com/wiki/Slug geesen.

Was ich in dieser Richtung im Web fand ist
<?php
preg_match("//page/(d+)/.*+/", $_SERVER['REQUEST_URI'], $match);
if($match[1])
$_GET['page_id'] = $match[1];
?>

Gibt es nicht auch eine einfache Funktion wie beim obigen Ankerpatch ?

Was bedeutet in seo-slugs ("$sn?$su") von der Syntaxseite ?

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Footnotes

Post by cmb » Sat Sep 16, 2017 11:07 pm

cmss wrote:Was ich in dieser Richtung im Web fand ist
… speziell?
cmss wrote:Gibt es nicht auch eine einfache Funktion wie beim obigen Ankerpatch ?
Hmm, meinst du seo_slugs()?
cmss wrote:Was bedeutet in seo-slugs ("$sn?$su") von der Syntaxseite ?
Es handelt sich dabei um eine Zeichenketten-Konketanation unter Verwendung der einfachen Syntax.
Christoph M. Becker – Plugins for CMSimple_XH

Post Reply