Logo der TYPO3 Usergruppe Leipzig

TYPO3 Performance Optimierung - Google Page Speed

Die Ladezeit einer Seite (Page Speed) fließt nun in den Ranking Faktor von Google ein. Google Page Speed ist als Menupukt in Webmaster Tools (Google-Labs -> Website-Leistung) zu finden! Dort sind grafische Statistiken zur Ladezeit zu finden un es werden Maßnahmen zur Optimierung vorgschlagen.

Google Page Speed Firefox Plugin

Der Page Speed einer Seite lässt sich am besten mit dem Firefox Plugin ermitteln. Er wird in Punkten angegeben und der höcshte Wert beträgt 100/100.

http://code.google.com/intl/de/speed/page-speed/

Grundsätzliche Maßnahmen

  • no_cache Parameter vermeiden
  • Caching einschalten (no_cache = 0)
  • Statischen Filecache aktivieren (tx_staticfilecache)
  • Bilder optimieren (Funktion von Google Page Speed Firefox Plugin nutzen) und immer die Größen angeben.
  • nicht verwendete Extension entfernen
  • valider CSS und HTML Code

CSS und JavaScript

Eigene CSS für Startseite mit erforderlichen Angaben. Möglichst nur 1 CSS Datei und kein @import verwenden. Stylesheets einzeln im Header einbinden.
Richtige Verwendung von CSS Selectoren. Inline JS und CSS von Extensions auslagern.

TypoScript:
plugin.tx_cssstyledcontent._CSS_DEFAULT_STYLE >
config.removeDefaultJS = 1

CSS und JavaScript richtig anordnen:
<link rel="stylesheet" type="text/css" href="style1.css" />
<link rel="stylesheet" type="text/css" href="style2.css" />
<script type="text/javascript" src="script1.js"></script>
<script type="text/javascript" src="script2.js"></script>

CSS und JavaScript minimieren:
http://compressor.ebiene.de

Eigene Subdomains für mehrere gleichzeitige Requests (keine Cookies senden):
css.domain.de, js.domain.de, img.domain.de

Externe JS Scripts z.B. von Google einbinden:
ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js

GZIP Komprimierung

Die GZIP Komprimierung (Apache Modul: mod_deflate) per .htaccess aktivieren. Damit werden die Daten komprimiert vom Server zum Browser übertragen. Leider unterstützen nicht alle Browser die Komprimierung.

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary

Headerdaten senden

Für Dateien müssen die notwendigen Headerdaten gesendet werden (Apache Modul: mod_expires aktivieren):

ExpiresActive on
ExpiresByType image/gif "access plus 35 days"
ExpiresByType image/png "access plus 35 days"
ExpiresByType image/jpg "access plus 35 days"
ExpiresByType image/jpeg "access plus 35 days"
ExpiresByType text/css "access plus 35 days"
ExpiresByType text/xml "access plus 35 days"
ExpiresByType text/javascript "access plus 35 days"
ExpiresByType application/x-shockwave-flash "access plus 35 days"
ExpiresDefault "access plus 1 days"

Fazit

Wenn man bei der Entwicklung auf diese Maßnahmen achtet kann man ohne Probleme einen Page Speed von 95 bis 100 erreichen.

Autor: Lars Schumann

TUGLE TERMINE

das nächste TYPO3-Usergruppentreffen findet am 30.05.2011 um 19:00 Uhr im Horns-Erben...
Das erste TUGLE-Treffen 2011 findet am Montag, den 07.03.2011 um 19:00 Uhr in...
Wie gestern auf dem interessanten TUGLE-Treffen besprochen, treffen wir uns nächstes Mal bei...

TYPO3 NEWS

After an exciting 2011 we have meanwhile completed the first month of 2012. Just like probably everyone else we have some ideas for doing things better than in the past, and this includes...
The organizational structure of the TYPO3 Association isn't a proper fit anymore to the TYPO3 project's own internal structure, nor does it fit the size the project has become over time. A need for...
Security vulnerabilities have been discovered in third-party TYPO3 extensions: css_filelinks, terminal, beuserswitch, rtg_files, irfaq, skt_eurocalc, jftcaforms, bc_post2facebook, aeurltool,...