Hi,
dank hier in forum (Marco glaube ich?) habe ich letzte Woche ein pdf datei bekommen um performance von oxid shop zu verbessern klappt auch soweit alles prima. nur das letzter siebter kapitel will nicht funktionieren. Hier ein auszug:
7.) Weitere Möglichkeiten zur Performance-Optimierung
Sie können den Subdomain-Trick auch für das CSS sowie JavaScript anwenden. Hierzu müssen Sie eine Subdomain (z.B. css.demoshophost.de) definieren, die genau auf den verwendeten Template Ordner zeigt. Und in Header tpl folgender zeile:
<link rel="stylesheet" type="text/css" href="[{ $oViewConf->getResourceUrl() }]oxid.css">
ersetzen mit:
<link rel="stylesheet" type="text/css" href="http://css.demoshophost.de/oxid.css">
nur, danach bekomme ich mit IE sichere und unsichere meldung wenn ich zur Kasse gehe.
Du hast dein CSS wohl auf eine Subdomain verschoben, welche nicht mit https gesichert wird. Auf den https-Seiten wird nun diese Warnmeldung eingeblendet, da nicht alle Elemente geschützt sind.
[QUOTE=markus26;43507]Hi,
dank hier in forum (Marco glaube ich?) habe ich letzte Woche ein pdf datei bekommen um performance von oxid shop zu verbessern klappt auch soweit alles prima. nur das letzter siebter kapitel will nicht funktionieren. Hier ein auszug:
7.) Weitere Möglichkeiten zur Performance-Optimierung
Sie können den Subdomain-Trick auch für das CSS sowie JavaScript anwenden. Hierzu müssen Sie eine Subdomain (z.B. css.demoshophost.de) definieren, die genau auf den verwendeten Template Ordner zeigt. Und in Header tpl folgender zeile:
<link rel="stylesheet" type="text/css" href="[{ $oViewConf->getResourceUrl() }]oxid.css">
ersetzen mit:
<link rel="stylesheet" type="text/css" href="http://css.demoshophost.de/oxid.css">
nur, danach bekomme ich mit IE sichere und unsichere meldung wenn ich zur Kasse gehe.
Gruß Markus[/QUOTE]
Das ist ein sehr fragwürdiger Tipp, da genau das passiert, was Du bemerkst, da die CSS-Datei hart über “http” eingebunden wird.
Ich weiß auch gar nicht, was man dadurch sparen will…
Beim 1. Mal wird die CSS-Datei geladen, und das dauert, egal, woher, halt so lange, wie es dauert.
Danach wird die eh’ aus dem Cache geladen.
Also nicht immer alles blind glauben, was da so erzählt wird.
[QUOTE=avenger;43520]Ich weiß auch gar nicht, was man dadurch sparen will…
Beim 1. Mal wird die CSS-Datei geladen, und das dauert, egal, woher, halt so lange, wie es dauert.
Danach wird die eh’ aus dem Cache geladen.
Also nicht immer alles blind glauben, was da so erzählt wird.[/QUOTE]
Wenn man Bilder oder auch CSS-Dateien auf eine anderen Domain auslagert, dann können die Files parallel heruntergeladen werden. So verringerst du die gesamte Downloadzeit. Der Tipp ist nicht sinnlos.
[QUOTE=roland76;43521]Wenn man Bilder oder auch CSS-Dateien auf eine anderen Domain auslagert, dann können die Files parallel heruntergeladen werden. So verringerst du die gesamte Downloadzeit. Der Tipp ist nicht sinnlos.[/QUOTE]
Nun, die Browser verwenden sowieso mehrere Verbindungen gleichzeitig zum Server…
Da würde micht echt mal eine Ladetimeline von Firebug interessieren, um zu sehen, wieviele Mikrosekunden man dadurch spart…
[QUOTE=avenger;43525]Nun, die Browser verwenden sowieso mehrere Verbindungen gleichzeitig zum Server…[/QUOTE]
Stimmt. Nur wenn du gewisse Dateitypen auslagerst, hat dein Browser danach eben doppelt so viele Verbindungen. Resultate findest du bestimmt über Google.
@roland76
die ursache ist mir schon bekannt aber ich dachte ich kann Ihn irgendwie mit einem eintrag in config.inc umgehen.
@avenger
ich habe jetzt pictures ausgelagert und cache zeit verlängert trotzdem merke ich keinen unterschied. in google webmaster bereich werde ich hoffentlich demnächst bessere zahlen als jetzt (2,5 sek.) sehen.
[QUOTE=roland76;43530]Stimmt. Nur wenn du gewisse Dateitypen auslagerst, hat dein Browser danach eben doppelt so viele Verbindungen. Resultate findest du bestimmt über Google.[/QUOTE]
Falsch.
Die Browser verwenden insgesamt x Threads, egal von welchem Server die Daten kommen.
Na dann schau [hier](Parallelize downloads across hostnames) mal die unterste Grafik an. 15 gleichzeitige Downloads würden deine Aussage nicht unterstützen.
> Die Browser verwenden insgesamt x Threads, egal von welchem Server die Daten kommen.
Das ist kompletter Quatsch - es wird auf Webserver, dh Domain beschränkt, unter FF heissen die Einstellungsoptionen zb. network.http.max - bei manchen Browsern ist das nur 2 bis 4 - man kann durch die Aufteilung der Ressourcen die geladen werden, die Performance erhöhen und reduziert gleichzeitig die Serverlast, wenn die Reesourcen auch noch auf anderen Servern liegen - gleiches gilt für die Zusammenfassung der JS oder CSS Dateien.
Das grösste Problem dabei ist die SSL-Geschichte, sollte SSL eingesetzt werden, dann sollte man entweder 2 Köpfe haben, einen für SSL und einen für ohne SSL, wo die Anweisungen entsprechend drin sind oder einen dynamischen Kopf - der die URLs entsprechend angleicht. Die 3. Möglichkeit, dass alle extern angesprochenen Server SSL unterstützen schliesse ich jetzt mal aus, wäre aber auch ein Mittel.
Hallo Stefan,
ich habe Ihn jetzt im einsatz. Danke für den link. Habe keine lust mir jetzt zwei header zu bauen wegen ssl, aber komprimieren hats wirklich geholfen.
gruß markus
Warum Bug? Das Problem ist ja, dass wenn du unter www.shop.com den Shop laufen lässt und z.B. unter img.shop.com die Bilder ablegst eine Sicherheitswarnung im SSL Modus bekommst. Dies weil normalerweise nur www.shop.com mit SSL verschlüsselt ist. Habt ihr beide Domains verschlüsselt oder wie habt ihr das gelöst?
Diese Zeile in confic.inc.php anhängen:
//define imagedir via subdomain, which points to the original image folder
$this->sAltImageDir = “http://pictures.shop.com/”;
danach bekommst du keine Meldungen mehr wegen sichere und unsichere element von IE, css und javascript habe ich wie oben beschrieben komprimiert und hochgeladen, bin jetzt zufrieden.
[QUOTE=roland76;43757]Warum Bug? Das Problem ist ja, dass wenn du unter www.shop.com den Shop laufen lässt und z.B. unter img.shop.com die Bilder ablegst eine Sicherheitswarnung im SSL Modus bekommst. Dies weil normalerweise nur www.shop.com mit SSL verschlüsselt ist. Habt ihr beide Domains verschlüsselt oder wie habt ihr das gelöst?[/QUOTE]
Jo genauso muss man dann vorgehen. Aber es gab einen Bug mit dem sAltImageDir und SSL, der da erschwerend dazu kommt.
Es gibt mehrere Mögichkeiten SSL zu erkennen und darauf zu reagieren.
Die einfachste Lösung ist - wie “Google Analytics” das auch macht - per Javascript das Protokoll zu erkennen und darauf zu reagieren, bzw "http"s oder “http” aufzurufen:
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == ('on' || 1))
{...}
Bei meinen Shop lagere ich alle CSS-, JS-Datein und sowie alle Produktbilder auf einen eigenen Server aus. Dabei nutze ich auch “gzip” für alle Daten die übertragen werden (Aber das ist ein anderes Thema
@avenger:
In der Regel sind max 2. Request pro Server die der Browser gleichzeitig startet. Schau dir große Shops an, wie AMAZO… die lagern aus, was das Zeug hält Dabei vermute ich, dass dies sogar noch dynamisch abläuft. Je nach Serverlast.