Performance
Um eine angemessene Performance zu gewährleisten, verwenden wir den schlanken Webserver lighttpd in Verbindung mit dem PHP Cache APC.
Natürlich könnte als Webserver auch Nginx eingesetzt werden. Allerdings kommt es hier zu Problemen mit den .htaccess Dateien.
RAM erhöhen
Da ein Webserver in der Regel keine grafische Oberfläche benötigt, können wir ohne Probleme den Memory Split des Raspberry Pi anpassen. Somit steht mehr Arbeitsspeicher für die Anwendungen bereit.
Hierzu die Datei /boot/config.txt editieren:
gpu_mem=16
Installation
Nun werden die benötigten Komponenten für den Betrieb von Wordpress installiert.
sudo apt-get install lighttpd php5 php5-cgi php-apc php5-mysql mysql-server
Anschließend wird der Autostart der Dienste aktiviert.
sudo update-rc.d mysql defaults
sudo update-rc.d lighttpd defaults
Die Installation ist damit abgeschlossen. Wenden wir uns der Konfiguration zu.
PHP aktivieren
Um FastCGI in lighttpd zu aktiveren wird der nachfolgende Befehl verwendet.
sudo lighty-enable-mod fastcgi
sudo lighty-enable-mod fastcgi-php
Im Folgenden muss noch ein Handler für die PHP Dateien in der /etc/lighttpd/lighttpd.conf angelegt werden. Die Definition kann an das Ende der Datei angehangen werden.
fastcgi.server = ( ".php" => ((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/tmp/php.sock"
)))
APC Cache einrichten
Vor der ersten Verwendung müssen noch einige Einstellungen am APC Cache vorgenommen werden. Die Einstellungen finden sich in der Datei /etc/php5/conf.d/20-apc.ini.
extension=apc.so
apc.enabled=1
apc.file_update_protection=2
apc.optimization=0
apc.shm_size=32M
apc.include_once_override=0
apc.shm_segments=1
apc.gc_ttl=7200
apc.ttl=7200
apc.num_files_hint=1024
apc.enable_cli=0
Einstellungen übernehmen
Zur Übernahme der Änderungen den Webserver neustarten.
sudo service lighttpd restart
Datenbank und Benutzer
Aus Sicherheitsgründen erstellen wir einen extra MySQL Benutzer, welcher nur auf die Wordpress Datenbank Zugriff besitzt.
mysql -u root -p
CREATE DATABASE wordpress;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
exit;
Wordpress installieren
Im nächsten Schritt kann die eigentliche Wordpress Installation vorgenommen werden. Hierzu in den Document Root des Webserver navigieren.
cd /var/www
Zunächst wird Wordpress Archiv heruntergeladen und entpackt.
wget http://wpde.org/files/2013/09/wordpress_361-de.zip
unzip wordpress_361-de.zip
Berechtigungen
Vor der Konfiguration von Wordpress müssen noch die Berechtigungen angepasst werden.
sudo chown -R www-data:www-data /var/www/wordpress
Konfiguration erstellen
Jetzt kann der Assistent unter der Adresse http://<IP des Raspberry Pi>/wordpress/ aufgerufen werden.
WP Fast Cache
Um die Geschwindigkeit von Wordpress auf dem Raspberry Pi weiter zu steigern, kann man das Wordpress Plugin WP Fast Cache installieren.
Dieses hält alle Seiten als fertig generiertes HTML vor und liefert diese aus. Somit entfällt die Verarbeitung durch PHP fast komplett.
Fazit
Dank dem PHP Cache APC und dem schlanken Webserver Lighttpd läuft Wordpress auf dem Raspberry Pi in einer akzeptablen Geschwindigkeit.
Quellen: Raspberry Pi Logo, Wordpress Logo
Michael Kostka
14.02.2014 12:11
wenn das Problem nach dem Neustart auftritt wird der Webserver oder die Datenbank vermutlich nicht gestartet.
Wichtig hierzu sind die nachfolgenden Befehle:
sudo update-rc.d mysql defaults
sudo update-rc.d lighttpd defaults
Die Dienste kannst du auch manuell starten:
sudo service mysql start
sudo service lighttpd start
Viele Grüße
Michael
Michael
13.02.2014 08:36
Funktionierte auch super, bis ich den Raspberry heruntergefahren habe.
Danach kann ich leider keine Webseite mehr öffnen.
Über SSH sowie über SFTP kann ich aber auf den Raspberry.
Habe ich etwas übersehen?
Danke Michael
Fetz
20.01.2014 22:22
Werde ich demnächst gleich mal versuchen. Hoffentlich läuft es damit dann annehmbarer Geschwindigkeit.
Viele Grüße
Fetz
Michael Kostka
15.01.2014 20:16
ähnlich wie bei Nginx müssen die Einträge in der .htaccess in abgeänderter Form in die lighttpd.conf eingefügt werden.
http://rootserverblog.com/2011/07/lighttpd-wordpress-permalinks-und-wp-super-cache/
Alternativ kannst du statt Lighttpd auch Nginx einsetzen. Hierfür gibt es dann automatische Konverter.
Viele Grüße
Michael
Fetz
15.01.2014 19:57
habe gerade alles wie beschrieben befolgt und Wordpress ist soweit auch installiert. Vielen Dank dafür.
Lediglich beim installieren des WP Fast Cache Plugins scheitere ich. Heruntergeladen ist es ordnungsgemäß. Nun klicke ich innerhalb von Wordpress auf das Plugin und bekomme folgende Meldung:
Installation Not Complete
1. Put this code at the very BEGINNING of your .htaccess file!
If your .htaccess file were writable, we could do this automatically, but it isn’t so these are the mod_rewrite rules you should have in your .htaccess file. Click in the field and press CTRL + a to select all.
Daraufhin folgt etwas Code. Nun ist aber das Problem, dass es mit lighttpd ja leider keine htaccess Datei gibt.
Gibt es für das Problem eine Lösung?