TYPO3 und Content delivery networks
Wir hatten diesmal in einem Projekt die Idee, statische Inhalte nicht vom selben Server zu laden, wo auch PHP prozessiert wird. Daher wurde dann ein Cookie-freier, Caching-optimierter Server zur Auslieferung von Statischen Dateien konfiguriert.
Dabei hatten wir uns folgende Vorteile versprochen:
- Alte Browser können Daten schneller laden
- Etwas schnellere Auslieferung der statischen Dateien
- Bessere Leistungsergebnisse unter hoher Last
- Entlastung für den www-Server
- Schnellere Seitenauslieferung von HTML-Dateien
- Schnellere PHP-Prozessierung
Mit der Extension ja_replacer konnten wir die Anforderung in TYPO3 umsetzen:
- Alle Statischen Dateien sollen von static.domain.com ausgeliefert werden
- Sichere Verbindungen müssen berücksichtigt werden
- Statisches Caching muss weiterhin funktionieren
Die Stelle, wo Ja_replacer ansetzt, ist direkt am Output von TYPO3, also kurz bevor ausgeliefert, bzw. in den Cache geschrieben wird. An dieser Stelle können nochmals beliebige Strings gesucht und ersetzt werden. Das Setup wird per TYPOScript gemacht, wir ersetzen in unserem Fall alle Links zu den einschlägigen Verzeichnissen, in welchen sich statische Infos aufhalten:
#Welche Links sollen ersetzt werden? (jeweils mit und ohne Slash am Anfang)
config.tx_ja_replacer.search {
10="/typo3temp/
11="typo3temp/
12="/fileadmin/
13="fileadmin/
14="/typo3conf/
15="typo3conf/
}
#Mit was soll ersetzt werden, wenn im unsicheren Bereich (http)
tx_ja_replacer.unsecure = COA
tx_ja_replacer.unsecure {
10="http://static.domain.com/typo3temp/
11="http://static.domain.com/typo3temp/
12="http://static.domain.com/fileadmin/
13="http://static.domain.com/fileadmin/
14="http://static.domain.com/typo3conf/
15="http://static.domain.com/typo3conf/
}
#Mit was soll ersetzt werden, wenn im sicheren Bereich (https)
tx_ja_replacer.secure = COA
tx_ja_replacer.secure {
10="https://static.domain.com/typo3temp/
11="https://static.domain.com/typo3temp/
12="https://static.domain.com/fileadmin/
13="https://static.domain.com/fileadmin/
14="https://static.domain.com/typo3conf/
15="https://static.domain.com/typo3conf/
}
#Domain Setup:
[globalString = ENV:HTTP_HOST = www.domain.com]
#normalfall, wird statisch gecached
page.config.baseURL = http://www.domain.com/
config.tx_ja_replacer.replace < tx_ja_replacer.unsecure
[global]
[globalString = ENV:HTTP_HOST = www.domain.com] && [globalString = _SERVER|HTTPS=on]
page.config.baseURL = https://www.domain.com/
config.tx_ja_replacer.replace < tx_ja_replacer.secure
[global]
Wenn wir die Leistungsergebnisse gemessen haben, werde ich an dieser Stelle nochmal einen Bericht anfügen.

Cool. Wir haben das auch bei uns im Einsatz. Wir nutzen hierbei die Cloudfront von Amazon. Super wie man dass auch per CNAME auf eine Subdomain mappen kann.
Hi,
super Idee! Das muss ich glatt mal ausprobieren.
Was war der Grund für diese Designentscheidung? Wieviel Traffic ist auf dem Server?
Die Seite ist generell gut besucht, aber jeder Zentimeter Luft nach oben ist ein Schritt in die richtige Richtung.
Und Ihr wisst ja: http://t3n.de/news/seo-google-ranking-site-speed-260247/
TYPO3 und Content Delivery Networks (CDN)…
Wie man Content Delivery Networks, bzw. ein “Cookie-Free Domain Setup” ganz leicht in TYPO3 einbinden kann….
Und wie sieht es aus, habt ihr Performancetests gemacht? Denn das “Suchen/ Ersetzen dauert natürlich auch.
Toll wäre es, wenn man in den Core etwas ähnliches wie config.absRefPrefix packen könnte, dass aber nur die entsprechenden Verzeichnisse umschreibt. Und nicht die Links.
Das Suchen/Ersetzen dauert kaum.. wird auch nur einmal vor dem Wegcachen gemacht.
Okay, dann werde ich es mal testen.
[...] auf die Files.Informationen zur Integration eines CDN in TYPO3 findet man auf den Seiten von Margit AGWeitere Links zum Thema:http://de.wikipedia.org/wiki/Content_Distribution_Network [...]
Ich setzte CDN auf einigen Seiten ein. Für WordPress gibt es einige PlugIns die es unterstützen, aber die Lösung für TYPO3 funktioniert auch prima.
Coral CDN stellt ein kostenloses CDN zur Verfügung, das brauchbar ist.
Weitere Infos unter:
http://www.webseiten.leicht.info/2010/05/cdn-content-distribution-network-einsetzen/