Protože od ruského The Old Readeru jsem upustil, používal jsem lokálně běžící Liferea. Jenže při střídání dvou počítačů jsem pořád dokola označoval už přečtené a pomalu mě to přestávalo bavit. No a když mi to tak pěkně šlo s analytikou, proč si nenainstalovat na hostingu i RSS čtečku?
Tipy už jsem měl v minulém článku o rss čtečkách; nejvíce se mi líbila Tiny Tiny RSS (taky má online demo a mohl jsem si ho proklikat), jenže deployment je k dispozici jen jako docker image. Ono by to z něj určitě šlo vykopírovat, ale to už chce hlubší znalost použitých komponent a jejich konfigurace a tu já nemám.
Další na řadě byla Fresh RSS. Má elegantní moderní interface:
Umí být i responzivní, takže čtení přes mobil není problém:
Databázi, subdoménu i https certifikát jsem si zase naklikal v samoobsluze hostingu a pustil se do instalace. Podrobný návod je k dispozici.
Sice mě zmátla poznámka, že se máme ujistit že vystavujeme jen složku /.p (Jak to jako mám udělat na hostingu, kde se vystavuje automaticky všechno? A dělat to přes pravidla pro apache zase vyžaduje lepší znalosti, nehledě na to, že .htaccess už tam nějak nastavený je prakticky ve všech složkách.), ale nechal jsem to plavat.
Instalace hlásila hromady warningů, ale nakonec proběhla a mohl jsem se pokusit přihlásit. Tady lítaly také warningy, horší ovšem bylo, že přihlášení nefungovalo.
Warning: openlog() has been disabled for security reasons in /data/web/virtuals/x/virtual/www/subdom/reader/lib/lib_rss.php on line 16
Warning: session_cache_limiter(): Cannot change cache limiter when headers already sent in /data/web/virtuals/x/virtual/www/subdom/reader/p/i/index.php on line 32
To už jsem tedy řešit musel. Naštěstí (a kupodivu) se openlog volá v jediném souboru, takže jsem to odmazal a najednou bylo vše funkční.
S vědomím, že ty warningy při instalaci nejspíš také měly nějaké závažné důsledky jsem všechno smazal a dal si instalaci znovu, a tentokrát v každém kroku upravoval zdrojáky tak dlouho, dokud warningy nezmizely.
V kroku jedna:
Warning: Zend OPcache API is restricted by "restrict_api" configuration directive in /data/web/virtuals/x/virtual/www/subdom/reader/app/install.php on line 3
To se mi povedlo vygooglit, sice na jiném hostingu a pro jiný produkt, ale mně to také zabralo. Je nutné najít volání pcache_reset(); a upravit na tvar @opcache_reset();, tj. přidat před něj zavináč.
V kroku tři opět:
Warning: Zend OPcache API is restricted by "restrict_api" configuration directive in /data/web/virtuals/x/virtual/www/subdom/reader/lib/Minz/Configuration.php on line 228
se stejným řešením. A najednou vše dokonale funkční!
Dost času jsem strávil snahou dosáhnout automatického refreshování. Čtečka sice obsahuje update script (popis), /app/actualize_script.php, jenže ten je určený na volání z cronu a script se musí spouštět ze shellu (ne přes URL).
Zkoušel jsem ho odkrýt a povolit jeho volání, protože u wedosu sice cron k dispozici mám, ale počítá se právě s tím, že by volal URL. Ale nešlo to; i když jsem si udělal svůj dostupný PHP soubor a v něm ten originální zavolal
<?
require_once 'app/actualize_script.php';
?>
stejně to neprošlo, hlídá si to sám a napíše
FreshRSS error: This PHP script may only be invoked from command line!
Když jsem googlil tuhle hlášku, na chvíli mi svitla naděje, online cron je přesně to co chci a stránka v dokumentaci se tváří, že na to existuje URL /p/i/?c=feed&a=actualize a při nastavení tokenu nebo anonymního refreshe by to mělo fungovat.
Až na to, že konfiguraci tokenu v rozhraní nemám, anonymní refresh nejde zapnout (neuloží se) a když jsem to změnil natvrdo v konfiguračním souboru, stejně to nefungovalo. Tak snad někdy v budoucnu, zatím si musím stažení feedů spouštět sám.
Hodnocení hvězdičkami používá jako prevenci
opakovaného kliknutí anonymní cookie.
Pokud s tím nesouhlasíte, neklikejte.
Další podrobnosti k cookies zde.