Installation von Tiny Tiny RSS: Unterschied zwischen den Versionen
imported>EL Duderino K →PHP konfigurieren: +Forum |
imported>EL Duderino →Tiny Tiny RSS konfigurieren: Mehr Details |
||
Zeile 23: | Zeile 23: | ||
== Tiny Tiny RSS konfigurieren == | == Tiny Tiny RSS konfigurieren == | ||
Im folgenden wird davon ausgegangen, das Tiny Tiny RSS | Im folgenden wird davon ausgegangen, das Tiny Tiny RSS in den Ordner ''/var/services/web/ttrss'' entpackt worden ist. Das geht zum Beispiel mit | ||
<pre> | |||
$ cd /tmp | |||
$ wget http://tt-rss.org/download/tt-rss-1.6.2.tar.gz | |||
$ tar -xf tt-rss-1.6.2.tar.gz -C /var/services/web | |||
$ mv /var/services/web/tt-rss-1.6.2 /var/services/web/ttrss | |||
</pre> | |||
=== Datenbank erstellen === | === Datenbank erstellen === | ||
Es muß eine Datenbank angelegt und das sich im Unterverzeichnis ''schema/ttrss_schema_mysql.sql'' befindende Schema installiert werden. Wie das geht, beschreibt [[Verwalten der MySQL-Datenbank|dieser Artikel]]. | |||
Die weitere Konfiguration erfordert, daß ein MySQL-Nutzer und dessen Passwort in | Die weitere Konfiguration erfordert, daß ein MySQL-Nutzer und dessen Passwort in die Datei ''config.php'' gespeichert werden. Alle Benutzer der DiskStation können diese Datei lesen. Daher empfiehlt es sich, zum Zugriff auf die angelegte Datenbank ''nicht'' den ''root''-Account von MySQL zu benutzen, sondern einen eigenen MySQL-Nutzer anzulegen, der die nötigen Privilegien für diese Datenbank hat. Details dazu ebenfalls [[Verwalten der MySQL-Datenbank|hier]]. | ||
=== Schreibrechte === | === Schreibrechte === | ||
Der Nutzer ''nobody'' braucht Schreibrechte auf die Verzeichnisse ''lock/'', ''cache/'', ''feed-icons/'', ''cache/export/'', ''cache/images/'', ''cache/magpie/'', ''cache/simplepie/''. | Der Nutzer ''nobody'' (auf der DiskStation/Linux, nicht in MySQL) braucht Schreibrechte auf die Verzeichnisse ''lock/'', ''cache/'', ''feed-icons/'', ''cache/export/'', ''cache/images/'', ''cache/magpie/'', ''cache/simplepie/''. Dazu einfach auf der Shell | ||
<pre> | |||
for dir in "lock" "cache" "feed-icons" "cache/export" "cache/images" "cache/magpie" "cache/simplepie"; do | |||
chmod -R 777 "$dir"; | |||
done | |||
</pre> | |||
ausführen. Danach kann ''jeder'' DS-Nutzer diese Verzeichnisse schreiben. Das ist nicht weiter tragisch, da es nur Cache-Dateien betrifft. | |||
=== config.php === | === config.php === | ||
Die Datei ''config.php-dist'' muß in ''config.php'' umbenannt werden. | Die Datei ''config.php-dist'' muß in ''config.php'' umbenannt werden. Bei den darin definierten PHP-Konstanten 'DB_TYPE', 'DB_USER', 'DB_NAME', 'DB_PASS' und 'SELF_URL_PATH' müssen mit einem [[Alternative Texteditoren|Texteditor]] die richtigen Werte eingetragen werden. | ||
=== Updating Feeds === | === Updating Feeds === |
Version vom 30. Dezember 2012, 23:06 Uhr
Tiny Tiny RSS ist ein server-basierter Feedreader. Neben einer AJAX-Weboberfläche bietet er auch ein API an, mit dem die abonnierten Feeds auch externen Anwendungen zur Verfügung stehen (wird genutzt vom Android Client, oder dem Linux-Feedreader Liferea). Dieser Artikel beschreibt, wie es auf einer DiskStation installiert und (basis-)konfiguriert werden kann. Dia Anleitung bezieht sich auf die Version 1.6.2 von Tiny Tiny RSS, und DSM Version 4.1 mit PHP 5.3.x. Das ist eine vorläufige Version. Bitte nur nach vorheriger Rücksprache bearbeiten. --EL Duderino 16:11, 30. Dez. 2012 (CET)
Vorarbeiten auf der DS
Webserver und Datenbank aktivieren
Sowohl die Web Station als auch MySQL müssen aktiviert werden. Tiny Tiny RSS akzeptiert auch PostgreSQL als Datenbank, worauf hier aber nicht eingegangen wird.
PHP konfigurieren
Die Software verlangt, daß open_basedir leer ist. Sollte das nicht möglich sein, ist es theoretisch machbar, open_basedir pro Pfad zu setzen. Wer mehr weiß, sagt Bescheid.
Um den Update daemon auszuführen (vgl. unten), sollte die Option PHP safe_mode_exec_dir-Zugriffsbeschränkung abgewählt werden. Das sollte keine Sicherheitslücken öffnen (vgl. [1] und [2]), und der Safe Mode ist in der PHP 5.4 sowieso nicht mehr vorhanden (Wer mehr weiß, sagt Bescheid). Sollte Abwählen nicht möglich sein, muß auf der Kommandozeile mit root-Rechten folgendes ausgeführt werden:
$ ln -s /usr/bin/php /usr/syno/bin/php
Hintergrund ist, das /usr/syno/bin das voreingestellte safe_mode_exec_dir ist, vgl. auch die Ausgabe der PHP-Funktion phpinfo().

Tiny Tiny RSS konfigurieren
Im folgenden wird davon ausgegangen, das Tiny Tiny RSS in den Ordner /var/services/web/ttrss entpackt worden ist. Das geht zum Beispiel mit
$ cd /tmp $ wget http://tt-rss.org/download/tt-rss-1.6.2.tar.gz $ tar -xf tt-rss-1.6.2.tar.gz -C /var/services/web $ mv /var/services/web/tt-rss-1.6.2 /var/services/web/ttrss
Datenbank erstellen
Es muß eine Datenbank angelegt und das sich im Unterverzeichnis schema/ttrss_schema_mysql.sql befindende Schema installiert werden. Wie das geht, beschreibt dieser Artikel. Die weitere Konfiguration erfordert, daß ein MySQL-Nutzer und dessen Passwort in die Datei config.php gespeichert werden. Alle Benutzer der DiskStation können diese Datei lesen. Daher empfiehlt es sich, zum Zugriff auf die angelegte Datenbank nicht den root-Account von MySQL zu benutzen, sondern einen eigenen MySQL-Nutzer anzulegen, der die nötigen Privilegien für diese Datenbank hat. Details dazu ebenfalls hier.
Schreibrechte
Der Nutzer nobody (auf der DiskStation/Linux, nicht in MySQL) braucht Schreibrechte auf die Verzeichnisse lock/, cache/, feed-icons/, cache/export/, cache/images/, cache/magpie/, cache/simplepie/. Dazu einfach auf der Shell
for dir in "lock" "cache" "feed-icons" "cache/export" "cache/images" "cache/magpie" "cache/simplepie"; do chmod -R 777 "$dir"; done
ausführen. Danach kann jeder DS-Nutzer diese Verzeichnisse schreiben. Das ist nicht weiter tragisch, da es nur Cache-Dateien betrifft.
config.php
Die Datei config.php-dist muß in config.php umbenannt werden. Bei den darin definierten PHP-Konstanten 'DB_TYPE', 'DB_USER', 'DB_NAME', 'DB_PASS' und 'SELF_URL_PATH' müssen mit einem Texteditor die richtigen Werte eingetragen werden.
Updating Feeds
Per daemon oder cronjob. Beide sollten vom Benutzer nobody ausgeführt werden.
daemon
Hier ist der folgende Befehl auszuführen:
su -m nobody -c "(trap '' SIGHUP SIGINT SIGQUIT; /usr/bin/php /var/services/web/ttrss/update.php -daemon > /dev/null 2>&1) &"
cron
Im cronjob muß der Befehl
su -m nobody -c "cd /var/services/web/ttrss && /usr/bin/php /var/services/web/ttrss/update.php -feeds >/dev/null 2>&1"
ausgeführt werden. Für eine Periode von 20 Minuten wäre das Cron-Präfix
*/20 * * * *
einzutragen. Details über Cron sind hier beschrieben.