Gestern habe ich im Artikel Seitenaufbau beschleunigen 3 – Parallele Downloads ja erklärt, wieso es besser ist, die Ressourcen, die eine Webseite benötigt, auf mehrere Domains bzw. Subdomains zu verteilen. Der theoretische Hintergrund dürfte damit klar sein und wie man dies auf statischen Webseiten praktisch umsetzt, habe ich in dem Artikel ja auch beschrieben.
WordPress schneller machen
Auch bei WordPress ist es möglich, die Ressourcen auf mehrere Domains zu verteilen. Allerdings kann man hier nicht so einfach ohne Rücksicht auf Verluste die Dateien verschieben und die Pfadangaben ändern. Schließlich greifen ja auch Plugins auf diese Dateien zu und es kommt natürlich zu Problemen, wenn diese nicht gefunden werden.
Deshalb habe ich mich auf die Themes-Grafiken und die Uploads beschränkt, da diese Dateien meiner Erfahrung nach problemlos umgelenkt werden können.
Themes-Grafiken auslagern
Die Grafiken des Themes liegen im Ordner wpcontent/themes/Themename/images. Nachdem ihr wie gestern beschrieben eine Subdomain angelegt habt, legt ihr dort einen Ordner namens „images“ an und kopiert die Grafiken rein (eventuell könnt ihr die Grafiken vorher noch mit OptiPNG verkleinern). Dann ändert ihr alle Pfadangaben zu den Grafiken. Diese sind in der Datei wpcontent/themes/Themename/style.css gespeichert (vorher natürlich ein Backup machen). Aus wpcontent/themes/Themename/images/bgr_header.png macht ihr dann z. B. http://extern.example.com/images/bgr_header.png. Achtung! Im images-Ordner können auch Grafiken drin sein, die nicht über die style.css aufgerufen werden. Diese dürft ihr nach dem Auslagern natürlich nicht löschen.
Umzug des Upload-Ordners
Als zweiten Schritt könnt ihr auch noch eure Uploads auf der Subdomain auslagern. Da wir dafür Veränderungen in der Datenbank vornehmen müssen, macht bitte zuerst ein Backup der WordPress-Datenbank. Als nächstes kopiert ihr den kompletten Ordner Uploads, den ihr unter wpcontent/uploads findet, auf die Subdomain. Der Ordner sollte dann unter http://extern.example.com/uploads zu erreichen sein. Wichtig ist jetzt auch, die Rechte richtig zu setzen. Der Ordner „extern“ bekommt 755 als Rechte, der Ordner Uploads mitsamt den darunterliegenden Ordnern und Verzeichnissen 777. Das ist kein Sicherheitsrisiko, sondern die standardmäßige WordPresseinstellung für den Uploads-Ordner. Mit niedrigeren Rechten ist kein Upload möglich.
Uploadpfad in WordPress ändern
Danach meldet ihr euch in WordPress als Admin an und wählt im Menü „Einstellungen“ den Menüpunkt „Verschiedenes“ an. Dort ändert ihr im Textfeld „Uploads in folgenden Ordnern speichern“ den Uploadpfad ab. Normalerweise sieht der ungefähr so aus: /www/htdocs/Meine_Kundennummer/Mein_Ordner/wp-content/uploads. Den ändert ihr dann auf den neuen Uploadordner ab, das könnte z. B. so aussehen: /www/htdocs/Meine_Kundennummer/Mein_Ordner/extern/uploads. Wobei „extern“ der Ordner ist, dem ihr die Subdomain zugewiesen habt. Es ist ein wenig schwierig, das allgemeingültig zu erklären, weil es bei jedem Hoster ein bisschen anders aussieht. Im Feld „Kompletter Pfad zu den Dateien“ gebt ihr dann die Subdomain und den Ordnernamen an, in dem ihr die Uploads gespeichert habt, also z. B. http://extern.example.com/uploads. In beiden Feldern darf am Ende kein Schrägstrich stehen!
Anschließend müsst ihr noch an die Datenbank ran. Dort gebt ihr im SQL-Feld folgenden Code ein (übernommen vom Hausblog14):
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://example.com/Mein_Ordner/wp-content/uploads/', 'http://extern.example.com/uploads/');
Mit diesem Code wird der bisherige Pfad zum Uploadordner durch den neuen Pfad ersetzt. Die erste Pfadangabe gibt an, wo der Ordner bisher gespeichert war und die zweite weist auf den neuen Ordner hin. Diesmal müssen beide Pfade mit einem Schrägstrich enden.
So, das war es dann auch schon. Ab sofort werden auch bei euch die Ressourcen besser verteilt und ihr dürft euch an einem schnelleren WordPress erfreuen 🙂
Hat alles geklappt?
Schreibt doch mal in den Kommentaren, ob bei euch alles geklappt hat. Falls etwas unklar ist, könnt ihr natürlich auch noch Fragen zu der Anleitung stellen.
Hm… ich konnte keine Probleme feststellen. Hab wohl alles falsch gemacht ;-))
Ein Problem hat das Ändern der Pfade schon. Die Listung bei Google Images geht verloren.
@Pascal Bei den Grafiken des Themes dürfte das nicht so wichtig sein. Aber bei den Uploadgrafiken hast du natürlich recht. Wenn man damit bei Google Images weit vorne platziert ist, sollte man an den Pfaden besser nichts ändern.
Danke für den Tipp und zum Glück habe ich diesen Beitrag nicht erst in einigen Monaten gefunden^^
Mein Blog ist noch neu und somit habe relativ wenig Bilder, die ich verschieben muss. Zudem stellt sich für mich nicht die Problematik mit Google Image.
Besser direkt vom Anfang alles auf optimal stellen, als nachher im laufenden Betrieb Optimierungen vorzunehmen.
Ich habe es noch nicht ausprobiert (das hole ich nach, sobald ich dazu komme), aber ich bin schon froh, dass einem endlich einer dieses Thema und wie man es machen muss in klarer deutscher Prosa erklärt. Danke!
P.S. Willst Du Dir nicht einen Flattr-Button zulegen?
@Manfred Warum ich Flattr nicht einsetze, habe ich hier geschrieben: https://www.webmaster-zentrale.de/marketing/geld-verdienen/hast-du-mal-einen-flattr/
Aber falls du mich unterstützen willst, gibt es ja noch andere Möglichkeiten als Flattr. Du kannst z. B. einen Link auf den Blog oder einen Artikel setzen. Oder meine Artikel retweeten bzw. den Gefällt mir-Button anklicken.
Super, danke für die Anleitung. Obwohl schon etwas länger, der Code für die SQL-Datenbank hat noch super funktioniert! Genial!
Vielen Dank,
ich habe die Grafikelemente des Themes nach der Anleitung ausgelagert und einen Performancegewinn erreichen können.
Hi Cujo,
hab mich gerade durch deine Artikelserie bezüglich Pagespeed optimierung geklickt. Sehr schöne Übersicht und gut nachvollziehbar.
Bezüglich des Image Upload Ordners dieses Artikels und Google Bildersuche. Es sollte eigentlich reichen wenn man die alten Dateipfade per 301 umleitet um bestehende Positionen nicht zu verlieren oder zumindest zeitnah wieder dort gelistet zu werden.
Eventuell ergänzt du den Beitrag mit einer entsprechenden .htaccess Regel.
Ein guter Artikel! Seit WordPress 3.5 ist der Einstellungsdialog für das Upload-Verzeichnis jedoch verschwunden (zumindest bei Neuinstallationen). Die Lösung ist, in der Tabelle wp_options der WordPress-Datenbank die beiden Felder upload_path und upload_url_path mit den entsprechenden Werten auszufüllen. Dann erscheint der Einstellungsdialog wieder wie von Zauberhand im Backend.