Smarty und der Internetexplorer

Nerglom

Grünschnabel
Guten Morgen zusammen,

seit einiger Zeit beobachten wir ein Performance-Problem im Internet-Explorer diverser Seiten. Ein Beispiel hierfür ist: http://alt-bamberg.com/.

Weiss jemand zufällig, ob dies mit Smarty zu tun haben kann - ein Post im offiziellen Forum hat leider keine Lösung gebracht.

Wir haben schon diverse Sachen ausprobiert: Runterskalieren der Bilder, die CSS-Dateien rausgeworfen, damit weniger gerendert werden muss. Verschiedene Zugriffe auf den DB-Server.

Da wir jetzt das Problem Schritt für Schritt durchgehen sind wir jetzt schlussendlich bei Smarty angelangt. Allerdings findet sich hier nichts weiter zu diesem Thema (oder ich bin einfach nur blind ;) ).

Wie dem auch sei, wenn jemand einen Lösungsvorschlag hat, wäre ich sehr erfreut diesen zu hören.

Vielen Dank schonmal
 
Smarty ist ja eine PHP-Klasse. PHP selbst wird auf dem Server ausgeführt. Also wird auch Smarty auf dem Server gerendert. PHP selbst gibt HTML aus und an den Client (Browser). Daher macht es überhaupt keinen Unterschied, ob man jetzt Firefox oder Internetexplorer verwendet, es macht zu mindest keinen Unterschied für PHP.

Ich hab mal den Vergleich gemacht und subjektiv keinen Unterschied feststellen können. Interessanterweise dauert es bei beiden Browsern sehr lange, bis die Start-Seite angezeigt wird.

Meiner Meinung nach sollte man einen Profi mal mit Profiler ranlassen, dann könnte man das auf die Stelle im Code runter brechen, die das Problem verursacht.
 
Bin mal mit Firebug ran gegangen und siehe da Google Analytics dauert natürlich. Auch ist der Gesamt Load von ~ 1Mb ziemlich viel. Vielleicht solltest du mit Expire arbeiten. Den Google Load kannst du umgehen mit dieser Funktion. Hier wird dann Google im Hintergrund geladen.

HTML:
function script_load(arr)
{ 
    for (var i = 0; i < arr.length; ++i) {
        var snode = document.createElement('script');
        snode.setAttribute('type','text/javascript');
        snode.setAttribute('src',arr[i]);
        document.getElementsByTagName('head')[0].appendChild(snode);

    }
}
var arr = new Array('http://www.google-analytics.com/__utm.gif?utmwv=5.2.2&utms=5&utmn=1504010730&utmhn=alt-bamberg.com&utmcs=UTF-8&utmsr=1280x1024&utmsc=24-bit&utmul=de-de&utmje=1&utmfl=11.1%20r102&utmdt=Alt-Bamberg%20%7C%20Braumanufactur%20Alt-Bamberg&utmhid=221183081&utmr=-&utmp=%2F%3Fa%3D1&utmac=UA-26575816-1&utmcc=__utma%3D195293564.471244230.1326475393.1326475393.1326475393.1%3B%2B__utmz%3D195293564.1326475393.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B&utmu=q~');


script_load(arr);

Was Expire angeht probiere mal folgendes aus. Es müssen natürlich die Apache Module aktiviert sein.

.htaccess
Code:
<IfModule mod_expires.c>
    # turn on the module for this directory
    ExpiresActive on
    # set default
    ExpiresDefault "access plus 24 hours"

    # cache common graphics
    ExpiresByType image/jpg "access plus 1 months"
    ExpiresByType image/gif "access plus 1 months"
    ExpiresByType image/jpeg "access plus 1 months"
    ExpiresByType image/png "access plus 1 months"

    # cache CSS
    ExpiresByType text/css "access plus 7 days"

    # cache other filetypes
    ExpiresByType text/javascript "access plus 7 days"
    ExpiresByType application/javascript "access plus 7 days"
    ExpiresByType application/x-shockwave-flash "access plus 7 days"
</IfModule>

<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE text/javascript
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/xhtml+xml
    AddOutputFilterByType DEFLATE application/rss+xml
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE application/x-javascript
    AddOutputFilterByType DEFLATE application/x-shockwave-flash


</IfModule>

DU MUSST NATÜRLICH DAS NO CACHE IM HEADER AUCH RAUSNEHMEN! Sonst zieht der Client sich ja immer alles neu.
 
Zuletzt bearbeitet von einem Moderator:
Ok, dann vielen Dank erstmal euch zwei. Werde dann am Montag, wenn ich wieder in der Firma bin mal die Sachen ausprobieren.
Das mit der .htaccess ist mir beispielsweise komplett neu, dass ich da auch sowas machen kann....
 
Zurück