Views, Imagecache oder Browser-Cache?
am 17.08.2008 - 20:06 Uhr in
Jetzt habe ich hier so ne schöne Übersicht gebaut: http://netzschwimmer.de/temp/audioclassica-test/de/stereoplay-quadratur-...
(siehe die Navigation mit Minibildern unten)
Nur in jedem Browser ausser Firefox lädt er die Thumbnails bei jedem neuen Seitenaufruf, bzw. wenn ich einen der Links anklicke, komplett neu. Das dauert ewig, ist unerträglich und kann man den Leuten nicht zumuten, Gott bewahre wenn einer mit ISDN auf die Seite surft.
Wer cacht hier nicht richtig: Views? (das sind natürlich Views da unten, sogar mehrere), oder Imagecache (wette ich dagegen, da ja die Bilder hardwaremässig erzeugt und nur noch verlinkt werden)?
Oder doch die Browser, ja ganz offensichtlich, da Firefox es hinbekommt.
Wenn das wirklich nur so geht, dann muss ich mir einen Workaround überlegen...
Vielleicht einer nen Tip? Der View ist als List-View gemacht, mit zwei Feldern, Title und eben jeweils einem Bild.
Seitencache habe ich aktiviert, hilft auch nichts.
- Anmelden oder Registrieren um Kommentare zu schreiben
Hallo, schau dir das mal
am 18.08.2008 - 11:22 Uhr
Hallo,
schau dir das mal an:
stereoplay-old-english-fellows.jpg
(Status-Line) HTTP/1.1 200 OK
Date Mon, 18 Aug 2008 10:17:59 GMT
Server Apache/2.2.0 (Linux/SUSE)
X-Powered-By PHP/5.1.2
Set-Cookie SESSfc9743e1fa5b231bb17c2bf33b742e84=ll2isf0ft7vka4spmle7vkj9n2; expires=Wed, 10 Sep 2008 13:51:20 GMT; path=/; domain=.netzschwimmer.de
Expires Sun, 19 Nov 1978 05:00:00 GMT
Last-Modified Fri, 15 Aug 2008 17:17:55 GMT
Cache-Control store, no-cache, must-revalidate, post-check=0, pre-check=0
Content-Length 978
Etag "964fc87d89e9b2ca583cbde82b402f03"
Keep-Alive timeout=15, max=99
Connection Keep-Alive
Content-Type image/jpeg
Da steht "no-cache" und Expires weit weit in der Vergangenheit.
Solange du die Bilder nicht durch PHP ausgibts, verwaltet dein Apache diese Regeln.
Drupal hat falls mod_expires läuft nur einen Eintrag für html in deiner htaccess
# Requires mod_expires to be enabled.
<IfModule mod_expires.c>
# Enable expirations.
ExpiresActive On
# Cache all files for 2 weeks after access (A).
ExpiresDefault A1209600
# Do not cache dynamically generated pages.
ExpiresByType text/html A1
</IfModule>
Sieh dir das hier mal an:
http://httpd.apache.org/docs/2.2/mod/mod_expires.html
ExpiresByType image/jpg A1
ExpiresByType image/gif A1
...
Ich hoffe du kannst das einfach in deine htaccess eintragen und gut ist. Ansonsten hast du Probleme die Bilder irgendwie zum cachen frei zu geben.
CSS Hintergründe könnten besser laufen. Aber diese Bilder sind Dynamisch oder? Dann wird das eher schwierig.
---
Viele Grüße,
Kars-T
Arbeit: comm-press
Hobbies: Tower Defense HQ, plamo.de, Blog
Viele Grüße,
Kars-T
Aha
am 18.08.2008 - 13:07 Uhr
Also, wenn ich das zum Laufen bekommen kann, dann ist das ein super-Tip... Hatte schon befürchtet, dass das mit Views einfach nicht besser geht und mir alle möglichen Workarounds überlegt.Habe diese zusätzlichen Expires by type mal eingefügt und Apache neu gestartet. Genützt hat es allerdings nichts ;)
Auf diesen Seiten hier http://netzschwimmer.de/temp/audioclassica-test/de/ear-pl-509 ist der Effekt noch viel krasser, das lädt ewig langsam.
Die Bilder sind allerdings nicht dynamisch, Imagecache erzeugt die kleinen Thumbnails, und legt sie in der Grösse in einen Ordner ab.
Woher hast du denn diese Status-Line da oben? Kann man bei Bildern den Http Header irgendwie auslesen?
Noch eine Info: in der phpinfo steht unter Apache Environment folgendes:
HTTP_CACHE_CONTROL no-cache
HTTP_PRAGMA no-cache
Drupal - too unorganised to be a system
Zum auslesen benutze ich das
am 18.08.2008 - 16:00 Uhr
Zum auslesen benutze ich das hier
https://addons.mozilla.org/de/firefox/addon/6647
Firebug oder die Webdeveloper Toolbar müssten das auch können.
Deine Seite braucht bei mir allerdings schon 3 Sekunden pro. Wobei ich auch grad was runterlade.
Guck dir mal das Protokoll an, die Seite ist echt brutal ;)
Wenn du irgendwie weniger Anfragen draus machen kannst, dann ist das ein Segen für deine Besucher! Caching bringt ja erst nach dem ersten Auruf was und 20 Sekunden warten? Ich weiß nicht... ;)
Started Time Sent Recieved Method Result Type URL
01:44:37.704 3.552 490 270 GET 200 text/html /de/ear-pl-509
01:44:41.280 3.535 487 38014 GET 200 text/css files/css/52c3169519a99c762441d6d3c0d1ebf6.css
01:44:41.291 2.767 440 17686 GET 200 text/x-js misc/jquery.js
01:44:44.867 0.939 440 5705 GET 200 text/x-js misc/drupal.js
01:44:45.824 1.314 468 10060 GET 200 text/x-js sites/all/modules/thickbox-2.0/thickbox.js
01:44:47.161 2.660 520 11310 GET 200 image/jpeg de/files/imagecache/Grosses_Produktbild/Galerie/ear-pl-509-2.jpg
01:44:47.174 0.624 545 262 GET 200 image/jpeg sites/all/themes/audioclassica/images/links-schatten.jpg
01:44:47.185 0.699 539 262 GET 200 image/gif sites/all/themes/audioclassica/images/leerbild.gif
01:44:47.195 1.167 546 262 GET 200 image/jpeg sites/all/themes/audioclassica/images/rechts-schatten.jpg
01:44:47.206 1.831 550 262 GET 200 image/jpeg sites/all/themes/audioclassica/images/linksunten-schatten.jpg
01:44:47.217 1.858 551 262 GET 200 image/jpeg sites/all/themes/audioclassica/images/rechtsunten-schatten.jpg
01:44:47.227 1.810 545 262 GET 200 image/jpeg sites/all/themes/audioclassica/images/linkespalte-bg.jpg
01:44:47.238 2.650 539 22042 GET 200 image/jpeg sites/all/themes/audioclassica/images/headerbg.jpg
01:44:47.363 4.942 518 284 GET 200 image/jpeg de/files/imagecache/Galeriebild_klein/Galerie/ear-pl-509-4.jpg
01:44:47.530 3.221 518 284 GET 200 image/jpeg de/files/imagecache/Galeriebild_klein/Galerie/ear-pl-509-3.jpg
01:44:47.569 4.957 512 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/leak-4.jpg
01:44:47.579 1.778 546 262 GET 200 image/jpeg sites/all/themes/audioclassica/images/galerie-verlauf.jpg
01:44:47.607 4.435 539 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/fine-arts-esoteric-line-schwarz-2.jpg
01:44:47.636 4.448 522 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/mucic-link-cd-23.jpg
01:44:47.665 4.746 523 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/mcintosh-mac-1700.jpg
01:44:47.693 4.570 531 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/fine-arts-esoteric-line_0.jpg
01:44:47.722 8.133 518 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/leak-tuner-2.jpg
01:44:47.758 7.314 522 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/martantz-sd-6000.jpg
01:44:47.820 8.162 520 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/quad-serie-2-1.jpg
01:44:47.849 11.610 518 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/marantz-8b-1.jpg
01:44:47.920 11.651 529 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/audio-innovations-amp-3.jpg
01:44:47.977 7.423 521 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/telefunken-m-23.jpg
01:44:48.600 10.400 517 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/Scott-330-c.jpg
01:44:48.160 10.461 531 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/mal-valve-power-amp-one-3.jpg
01:44:48.260 11.210 528 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/Gabler-Dynaphon-62-b-2.jpg
01:44:48.350 11.457 525 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/adiophil-endstufe-2.jpg
01:44:48.450 11.871 518 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/ear-pl-509-2.jpg
01:44:48.550 15.547 522 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/futterman-h3aa-1.jpg
01:44:48.640 14.915 527 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/tannoy-monitor-gold-1.jpg
01:44:48.740 15.380 515 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/tambour-3.jpg
01:44:48.840 14.939 519 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/dynavox-3.2-1.jpg
01:44:48.930 16.622 527 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/martin-logan-sequel-2.jpg
01:44:48.103 14.965 525 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/tandberg-serie-62-1.jpg
01:44:48.113 17.155 524 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/ferrograph-logic-7.jpg
01:44:48.122 18.300 526 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/quad-elektrostaten-1.jpg
01:44:48.136 16.472 513 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/emt-928.jpg
01:44:48.145 20.942 520 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/audiomeca-solo.jpg
01:44:48.155 20.496 524 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/audio-valve-preamp.jpg
01:44:48.165 19.151 525 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/marantz-tuner-10b-1.jpg
01:44:48.176 20.770 519 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/goerler-tuner.jpg
01:44:48.186 19.368 529 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/transrotor-jochen-raeke.jpg
01:44:48.195 19.959 533 284 GET 200 image/jpeg de/files/imagecache/Galerie_Navithumb/Galerie/crown-harmankardon-finearts.jpg
01:44:48.210 19.225 508 262 GET 200 image/gif sites/all/themes/audioclassica/images/rufzeichen.gif
01:44:48.220 19.434 514 262 GET 200 image/gif sites/all/themes/audioclassica/images/login-schluessel.gif
---
Viele Grüße,
Kars-T
Arbeit: comm-press
Hobbies: Tower Defense HQ, plamo.de, Blog
Viele Grüße,
Kars-T
Problem gelöst
am 21.08.2008 - 14:40 Uhr
Hooray, ich hab's herausgefunden.
Das Problem ist Imagecache. Mag sein dass es daran liegt, dass ich ziemlich viele Presets für Imagecache habe, oder was auch immer.
Jedenfalls in dem Augenblick, indem ich einfach ein zusätzliches Bildfeld anlege für die kleinen Thumbnails, und diese nicht über Imagecache, sondern direkt als "Link to node" anspreche, geht es auf einmal, und die Seite lädt blitzartig.
Dann werden die Bilder auch im IE gecacht, als Expires Header steht da jetzt zwar gar kein Wert (was "Nie" bedeuten könnte und auch ungeschickt wäre).
Aber egal. Und ich hab mir schon so den Kopf zerbrochen! Es lebe der Workaround!
Drupal - too unorganised to be a system