WordPress durch Subdomains beschleunigen

WordPress

Mit Sicherheit ist vielen bekannt, dass das Einbinden von weiteren Dateien via Subdomain durchaus Vorteile haben kann. Durch das Einbinden von z.B. Grafiken über eine Subdomain ist es möglich, dass diese parallel zu den restlichen Daten geladen werden können. Jede Datei, egal ob sie JavaScript, CSS, Bilddaten, etc. enthält, erzeugt einen Request. Jeder Browser hat ein Limit von Requests. Meistens liegt dieses Limit zwischen zwei bis vier Requests pro Domain.

Eine Reduzierung der Ladezeit durch Subdomains ist auch mit WordPress umsetzbar.

Die Subdomain(s)

Als erstes benötigen wir natürlich mindestens eine Subdomain. Wenn man die Möglichkeit hat, können natürlich auch mehrere Subdomains von Vorteil sein. In diesem Post werde ich mit zwei Subdomains arbeiten, eine für hochgeladene, multimediale Inhalte wie z.B. Fotos und eine weitere für die vom Theme genutzten Dateien.

Screenshot: Subdomains im All-Inkl. Konfigurationsbereich

Die Subdomains für diesen Blog

Ich lasse für diesen Blog die Subdomain einfach auf das bereits bestehende Verzeichnis zeigen. Alternativ kann man natürlich die Daten auch umkopieren. Dabei muss man allerdings aufpassen, da evtl. Daten die durch Plugins oder ähnliches eingebunden werden ihre alte URL behalten.

Die Einstellungen im WordPress-Backend

Damit die hochgeladenen Bilder auch an der richtigen Stelle gespeichert werden und beim Einbinden in die Artikel auch die neue Subdomain verwendet wird, muss man natürlich ein paar Einstellungen im Adminbereich von WordPress vornehmen.

Die Einstellungen findet ihr in dem Bereich Einstellungen -> Mediathek. Wenn ihr die Subdomain auf das bestehende Verzeichnis zeigen lasst (meist wp-content/uploads) und die Daten nicht umkopiert habt, so genügt die Angabe der neuen Subdomain im zweiten Feld (siehe Bild unten).

WordPress Einstellungen der Mediathek

WordPress Einstellungen der Mediathek

Solltet ihr die Dateien an einen neuen Ort kopiert haben, so müsst ihr im oberen Feld den Pfad zu diesem Verzeichnis angeben. Dieser kann, abhängig vom Hoster, recht unterschiedlich sein. Grob sollte er folgendermaßen aufgebaut sein:

1
/www/htdocs/kundennummer/euerverzeichnis/uploads

Im Zweifelsfall einfach kurz beim Hoster nachfragen.

Änderungen an der Datenbank

Danach müsst ihr unter Umständen auch noch einige Änderungen an der Datenbank vornehmen. Wenn die Daten an dem alten Ort liegen bleiben, ist dieses nicht unbedingt nötig aber dennoch sinnvoll. Am einfachsten könnt ihr die Änderungen über folgende SQL-Anfrage erreichen. Diese könnt ihr z.B. über das Tool phpMyAdmin absetzen.

1
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://example.com/wp-content/uploads/', 'http://static.example.com/');

Wie immer gilt natürlich vor allen Änderungen: Backup nicht vergessen!

Änderungen am Theme

Ich habe hier zusätzlich noch die Dateien des Themes über eine weitere Subdomain eingebunden. Dazu gehören z.B. Grafiken und auch die CSS-Datei. Hierzu habe ich die Pfade einfach hardcoded direkt in den Theme-Dateien mit der neuen Domain überschrieben. Für die style.css sieht das dann z.B. wie folgt aus:

1
<link rel="stylesheet" href="http://static2.nikonierer.de/style.css" type="text/css" media="screen" />

Die Subdomain zeigt dementsprechend auf das Verzeichnis des Themes. Als Beispiel:

1
wp-content/themes/themename

Nachteile

Das Einbinden der hochgeladenen Bilder über eine Subdomain kann durchaus auch Nachteile haben. Solltet ihr mit den Fotos und Grafiken gut in der Google Bildersuche gelistet sein, solltet ihr evtl. von einem Wechsel der Domain absehen.

Fazit

Diese Möglichkeit der Optimierung wird meiner Meinung nach viel zu selten genutzt, um WordPress Installationen zu optimieren. Wie seht ihr das Ganze?

Habt ihr nach Fragen oder Anregungen? Ab in die Kommentare damit!

FacebookRSS Feeds

5 Kommentare zu “WordPress durch Subdomains beschleunigen”

  1. Jörg

    22. März 2012 um 13:42

    Hi Marcel,
    genau das Tutorial kam gerade wie gerufen. Ich habe damit erfolgreich meine Mediathek in eine Subdomain ausgelagert.
    Großes Danke für die ausführliche Anleitung.
    Sonnige Grüße vom Bodensee
    Jörg

  2. Simon

    16. April 2012 um 16:28

    Besten Dank – genau danach hatte ich gesucht :).

  3. WordPress-Mediathek auf Subdomain auslagen. Warum und wie. | kulturbanause blog

    11. Mai 2012 um 13:59

    […] Subdomains WordPress beschleunigen – nikonierer.de […]

  4. Mark

    17. Dezember 2012 um 16:56

    Es klingt sehr vernünftig. Vielen Dank für dieses sinnvolle und leicht verständliche Tutorial.

    Da die GOOGLE-Bildersuche ja auch den Link zum Beitrag beinhaltet, ist die Frage, ob eine Verbesserung der Performance sinnvoller ist, als das Ranking der Bilder der alten Domain. Jetzt bin ich etwas unsicher.

    Aber mal sehen. Man müsste das mal ausprobieren.

  5. fynns

    17. Dezember 2012 um 18:40

    Hallo Marcel, klasse Artikel. Ich stehe heute vor dem Problem, das von Dir (und Kulturbanause) Beschriebene in WordPress 3.5 umzusetzen. Hast Duomain anpasse…bei mir soll es eine ECHTE Subdomain sein. Also der Blog liegt auf example1.com und das Medienverzeichnis unter media.example2.com… Hast Du hierzu vielleicht eine Idee?
    Viele Grüße, Jörg (noch einer) ;)