Friendica auf Synology Diskstation
Die Diskstation ist ein günstiger NAS, man benötigt für einen Friendica-Knoten also keinen teuren angemieteten Webserver. Allerdings ist für die Installation etwas Kommandozeile notwendig.
(Getestet mit Firmware DSM 4.0)
Vorbereitungen
Es wird ein DynDNS-Account und im Router eine Portweiterleitung des Ports 80 an die Diskstation benötigt, damit der Server unter einer externen Adresse erreichbar ist und mit den anderen Knoten Kontakt aufnehmen kann.
DiskStation Admin
In der Admin-Konsole der Diskstation bei der Systemsteuerung unter "Webdienste" "Webstation aktivieren" und "MySQL aktivieren" anklicken.
Im Reiter PHP-Einstellungen die laut Installationsanleitung benötigten Extensions auswählen. Nicht alle installierten Extensions werden hier angezeigt, sie sind aber trotzdem aktiv (hat mich einen Tag gekostet, das rauszufinden).
Safe_mode_exec_dir kann aktiviert werden. Register_Globals kann ausgeschaltet werden.
Open_basedir sollte nicht aktivert sein.
Achtung: Im Paketzentrum sollte die Photo-Station deinstalliert werden. Sie erzeugt einen Ordner Photo bei den Webdiensten. Friendica speichert die Bilder jedoch in einer Datenbank ebenfalls in einer Tabelle Photo. Wenn der Ordner Photo vorhanden ist, findet Friendica die Tabelle in der Datenbank nicht (das php Modul mod_rewrite ändert die URI Adresse für die Bilder nur dann in eine Datenbank-Adresse, wenn kein richtiger Ordner vorhanden ist) und es werden dann keine Bilder angezeigt (hat mich eine Woche gekostet, das rauszufinden).
Kommandozeile
Logge dich über Telnet oder ssh in deine Diskstation ein. Kopiere die entpackten Friendica Installationsdateien (am besten über den USB-Anschluss der Diskstation: /volumeUSB1/usbshare) in den Ordner /var/services/web/
Ein Aufruf der Webseite über den Browser sollte nun schon die Test-Seite von Friendica anzeigen.
Hier werden einige Test durchgeführt und vermutlich einige Bedingungen nicht erfüllt.
openssl.cnf
Das Problem mit der fehlenden openssl.cnf wir folgendermaßen gelöst (Quelle: http://www.vdsar.net/archives/114): Über telnet als root in die Diskstation einloggen ("telnet [IP-Adresse]", user: root, Passwort [Admin-Passwort]
cd /usr/syno
mkdir ssl
cd ssl
wget http://123adm.free.fr/home/pages/documents/syno-cert_fichiers/openssl.cnf
Die weiteren Punkte sind nur notwendig, wenn man seinen Friendica über eine verschlüsselte https-Verbindung erreichen möchte.
PHP-Einstellungen
Das Verzeichnis für die Kommandozeilen-Version ist /usr/bin/php
In /usr/syno/etc/php.ini können einige Einstellungen angepasst werden, z.B register_argc_argv = On
Möglicherweise erscheint trotzdem eine Fehlermeldung, dass dies nicht gesetzt ist, ich habe aber bisher keine Probleme mit Friendica deswegen feststellen können.
Ein Problem ist möglicherweise die Zugriffsberechtigung für die Extensions-Datei in /usr/syno/etc/php/
Diese sollte als root mit
chmod a+r extension.ini
für alle lesbar gemacht werden. Ansonsten funktionieren für das Kommandozeilen-php die Mysql-Extensions nicht.
Friendica benötigt sehr lange (ca. 15 Min.) um die Daten zu verarbeiten. Als nächstes wird eine mysql-Datenbank und Logins verlangt.
MySQL
Die Datenbank kann auf der Kommandozeile oder über das im Paket-Zentrum angebotene phpMyAdmin angelegt werden. Nach der Anlage der Datenbank und der User die Daten im Friendica-Formular angeben.
cron
Die Diskstation bietet einen Cron-Service. Die Datei /etc/crontab ist entsprechend den Vorgaben anzupassen.
Der Eintrag lautet
*/10 * * * * root cd /var/services/web; usr/syno/bin/php include/poller.php
Das kann alles noch über die LAN-Adresse erfolgen.
Nach der erfolgreichen Installation sollte man sich aber über die externe DynDNS-Adresse registrieren.