WordPress am Raspberry Pi

WordPress ist ein sehr leistungsstarkes und umfangreiches CMS System. Es erfreut sich vor allem über eine große Community, wird gerne für Blogs verwendet, kann aber auch sehr gut für Webseiten verwendet werden. Insgesamt ist WordPress kompakt, schnell und es gibt unzählig viele Themes und Plugins. Manche sind gratis, manche auch kommerziell. Es ist nur logisch, dass man auch irgendwann WordPress am Raspberry Pi ausprobieren will.

wordpress raspberry pi

WordPress Performance

Am Raspberry Pi sind Webapplikationen, durch den geringen Arbeitsspeicher von 512 MB, den er sich zudem auch noch mit der Grafikkarte teilen muss, immer sehr Performance kritisch. Um also eine maximale Performance zu kommen müssen wir einiges optimieren:

  1. maximaler RAM
  2. minimaler Web Server
  3. PHP Skript Ausführung beschleunigen

maximaler RAM

Der erste Schritt ist, der CPI mehr RAM Speicher zuzuweisen. Das geht entweder über das raspi-config Konfigurationstool oder über eine manuelle Änderung an der /boot/config.txt Datei. Man muss der GPU mindestens 16 MB Speicher zuweisen, es bleiben also 496 MB für unseren Web Server und das Linux System übrig. In der Config.txt einfach folgendes ändern:

Nach einem Neustart ist die Änderung aktiv.

minimaler Web Server

Der nächste Schritt ist die Verwendung eines schlanken und schnellen Web Server, der möglichst wenig RAM Speicher verbraucht. Dafür eignet sich lighttpd. In meinem Artikel über den Lighttpd Web Server zeige ich, wie man ihn am Pi installiert und konfiguriert.

Folgende Schritte sind auszuführen:

Danach müssen wir noch festlegen, dass sowohl Web Server als auch MySQL automatisch gestartet wird:

Wir müssen noch die Ausführung von PHP Skripten aktivieren

ACP

Die Verwendung eines ACP Caches beschleunigt die Ausführung von PHP Skripten indem diese nach dem 1. Ausführen im RAM zwischengespeichert werden. Leider benötigen wir dafür auch wieder zusätzlich RAM Speicher. In einem meiner letzten Artikel beschreibe ich schon den ACP Cache und wie man ihn installiert und konfiguriert. Die Konfigurationsdatei /etc/php5/conf.d/20-apcu.ini sollte man für den Raspberry Pi wie folgt ändern:

Die Änderungen können mit einem Neustart des Web Servers übernommen werden.

WordPress installieren

Nun kommen wir zum letzten Schritt. Die Installation von WordPress. Dazu wechseln wir in das Verzeichnis des Web Servers:

Installiert werden kann die aktuellste Version von WordPress ganz einfach in der Kommandozeile mit diesem Kommando:

Die Installation kann etwas dauern. Ist die Zip Datei heruntergeladen müssen wir sie noch entpacken:

Zuletzt sollten wir noch die korrekten Rechte setzen.

Datenbank vorbereiten

WordPress benötigt eine Datenbank, wir müssen also über MySQL eine Datenbank anlegen. Das WordPress Installationsskript erstellt dann alle notwenigen Tabellen und Inhalte. Zuerst brauchen wir aber eine Datenbank und einen Benutzer:

Nach erfolgreicher Passworteingabe gelangen wir in einen SQL Editor. Dort geben wir folgendes ein:

Mit diesen Statements legen wir eine Datenbank und einen Benutzer an und weisen dem Benutzer alle Rechte auf die neue Datenbank ein.

WordPress Installationsskript

Wir sind nun fertig. Im letzten Schritt müssen wir nur noch das WordPress Installationsskript ausführen. Dazu starten wir einen Browser und geben in die Adresszeile ein:

Die IP Adresse müsst ihr durch die des Raspberry Pi ersetzen oder mit ‚localhost‘, falls ihr direkt am Pi den Browser verwendet. Danach muss man nur noch den Anweisungen des Skripts folgen und die Datenbankverbindung eingeben.

WordPress läuft nun relativ flott. Als letzten Performance Boost können wird WordPress Plugins installieren die den HTML Code cachen. Da gibt es unterschiedlichen WP Super Cache oder WP Fast Cache sind zu empfehlen.

(Visited 4.050 times, 1 visits today)

Das könnte auch interessant sein...

16 Antworten

  1. Robbi373 sagt:

    Hallo,

    Ich wollte fragen wie man wordpress als lighttpd-homepage verwendet, also nicht:
    http://www.testestest.com/wordpress
    sondern:
    http://www.testestest.com
    Einfach die lighttpd.conf zu bearbeiten und als server.document-root den wordpress Ordner zu benutzen geht nicht, die Website wird dann nur als Text ohne Bilder angezeigt.

    P.S.: Man muss „php5-gd“ installieren, um Bilder auf der Website bearbeiten zu können.

    • Niklas sagt:

      Ja, dass kannst du in dem du alles aus dem WordPress Ordner ins www Verzeichnis verschiebst, dann noch den WordPress Ordner löschen und du bist fertig.
      MfG Niklas

      • Robbi373 sagt:

        Hi Niklas,
        Die Antwort kommt etwas spät 😀
        Hab jetzt einen anderen Weg gefunden – wobei man die Dateien im WordPress Ordner lässt und nur die index.php in den www Ordner schiebt und eine Zeile modifiziert.
        leider hab ich die genauen Links nicht mehr da, also kann ichs dir schlecht zeigen.

  2. Taft sagt:

    Danke für den Tipp,

    PHP5 wird dadurch extremst beschleunigt. Auch wenn man den Apache2 nutzt. Ein DualCore würde dem Raspberry echt nicht schaden…

    Gruß,

  3. Michael Wühr sagt:

    Hallo und vielen Dank für diese super Anleitung!

    Ich habe die Instruktionen Schritt für Schritt befolgt, die WP Installation funktioniert auch soweit im internen Netz (192.168.x.x).

    Leider habe ich folgendes Problem:
    wenn ich von „aussen“ über das Internet auf den Webserver zugreifen möchte, bekomme ich im Browser nur ein „Textgerüst“ ohne Bilder und aktive Links angezeigt. Die Links sind nicht „anklickbar“ und auch Buttons wie z.B. der „Los!“ Button eines Suchfeldes lassen sich nicht anklicken.

    Habt Ihr einen Tipp wo sich hier der Fehler befindet?

    • Das liegt vermutlich daran, dass die CSS und JS Dateien nicht verfügbar sind. Das kann daran liegen, dass die eventuell ein / nach der Domain vergessen hast oder dein Webserver kann auf diese Dateien nicht zugreifen. Sieht dir mal den HTML Code der Seite an und versuche die dort hinterlegten Links zu CSS bzw. JS Dateien anzuklicken. Dann müsstest du diese sehen können.

  4. Ich sagt:

    „CMS System“
    CMS System = Content-Management-System System klingt irgendwie falsch.

  5. Danield sagt:

    Hey, bei meinem Raspberry 1, ist bei gpu 126 eingetragen. Warum wird der wert auf 16 geändert, weniger ist doch schlechter oder?

    • das ist der Wert für die GPU. Auf einem Webserver hast du normalerweise wenig, dass du am Bildschirm darstellen musst, 3D Animation schon gar nicht. Da der RAM zwischen CPU und GPU ja geteilt wird, ist es für einen Webserver besser, es steht mehr RAM zur Verfügung.

  6. Danield sagt:

    Hey,

    Habe alles soweit durch nur unter http://meineip/wordpress erreiche ich die wordpress seite nicht. 404 – Not Found.

    Lighttpd mit http://meineip funktioniert jedoch einwandfrei…?

    Wie kann ich dem auf den Grund gehen?

  7. Zottelmonster sagt:

    Hallo,

    die Anleitung ist schon etwas älter aber für mich zielführend. Ich werde warscheinlich auch nicht der Letzte sein der hier landet 🙂

    Ein paar Anmerkungen hab ich allerdings:

    1. (ist etwas klugscheißen,ist mir aber erst bei probierne auf den 2ten Blick aufgefallen) Beim 3ten posting hat der Fehlerteufel zugeschlagen
    sudo update-rc.d mysqll defaults -> mysql hat ein l zu viel
    2. /etc/php5/conf.d/20-apc.ini mussjetzt (stand 23.02.2016) jetzt in /etc/php5/cgi/conf.d/20-apcu.ini heißen
    3. unzip latest.zip darf man das sudo davor nicht vergessen

  8. Manuel sagt:

    Muss beim Raspberry Pi 2 auch der RAM zugewiesen werden oder hat dieser auch ohne Zuweisung genug?

      • Manuel sagt:

        Danke für die Rückmeldung!
        Habe alles wie in der Anleitung eingerichtet.

        Jedoch nun ein massives Problem mit der Zugriffszeit.
        Die Seite ladet wenn man über das Internet darauf zugreift extrem lange bis hin zu Abbrüchen beim Laden.
        Im Heimnetzwerk läuft alles prima.

        Irgendwelche Tipps woran es liegt?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.