Cum se instalează Selfoss RSS Reader pe un FreeBSD 11 FAMP VPS

Selfoss RSS Reader este un cititor gratuit, cu sursă deschisă și liberă, bazat pe internet, multifuncțional, flux live, mashup, cititor de știri (RSS / Atom) și cititor universal. Selfoss RSS Reader dispune de import OPML, o API JSON odihnitoare și sistemul său de plug-in deschis vă permite să extindeți cu ușurință funcționalitatea implicită prin scrierea conectorilor dvs. de date personalizate. Puteți utiliza Selfoss pentru a transmite live stream și a colecta toate postările, tweet-urile, podcast-urile și fluxurile într-un singur loc central pe care îl puteți accesa cu ușurință de pe orice desktop sau dispozitiv mobil.

În acest tutorial, vom instala Selfoss RSS Reader 2.17 pe un FreeBSD 11 FAMP VPS folosind serverul web Apache, PHP 7.1 și o bază de date MariaDB.

Cerințe preliminare

  • O instanță curată a serverului Vultr FreeBSD 11 cu acces SSH

Pasul 1: Adăugați un utilizator Sudo

Vom începe adăugând un sudoutilizator nou .

În primul rând, conectați-vă la serverul dvs. ca root:

ssh root@YOUR_VULTR_IP_ADDRESS

sudoComanda nu este instalat în mod implicit în Vultr FreeBSD 11 server de instanță, așa că vom instala mai întâi sudo:

pkg install sudo

Acum adăugați un utilizator nou numit user1(sau numele de utilizator preferat):

adduser user1

adduserComanda va cere o mulțime de detalii pentru contul de utilizator, astfel încât pur și simplu selectați valorile implicite pentru cele mai multe dintre ele , atunci când are sens să facă acest lucru. Când vi se cere dacă trebuie Invite user1 into any other groups?, trebuie să introduceți wheelpentru a vă adăuga user1la wheelgrup.

Acum verificați /etc/sudoersfișierul pentru a vă asigura că sudoersgrupul este activat:

visudo

Caută o secțiune ca aceasta:

# %wheel        ALL=(ALL)       ALL

Această linie ne spune că utilizatorii care sunt membri ai wheelgrupului pot utiliza sudocomanda pentru a obține rootprivilegii. Acesta va fi comentat în mod implicit, astfel încât va trebui să îl decomentați, apoi să salvați și să ieșiți din fișier.

Putem verifica user1apartenența la grup cu groupscomanda:

groups user1

Dacă user1nu este membru al wheelgrupului, puteți utiliza această comandă pentru a actualiza user1apartenența la grup:

pw group mod wheel -m user1 

Acum folosiți sucomanda pentru a comuta la noul user1cont de utilizator sudo :

su - user1

Indicatorul de comandă se va actualiza pentru a indica faptul că sunteți acum conectat la user1cont. Puteți verifica acest lucru cu whoamicomanda:

whoami

Acum reporniți sshdserviciul astfel încât să vă puteți autentifica prin sshnoul cont de utilizator sudo non-root pe care tocmai l-ați creat:

sudo /etc/rc.d/sshd restart

Ieșiți din user1cont:

exit

Ieșiți din rootcont (care vă va deconecta sshsesiunea):

exit

Acum puteți sshintra în instanța serverului de la gazda locală folosind noul user1cont de utilizator sudo non-root :

ssh user1@YOUR_VULTR_IP_ADDRESS

Dacă doriți să executați sudo fără a fi necesar să introduceți o parolă de fiecare dată, atunci deschideți din /etc/sudoersnou fișierul, folosind visudo:

sudo visudo

Editați secțiunea pentru wheelgrup astfel încât să arate astfel:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Vă rugăm să rețineți: Dezactivarea cerinței de parolă pentru utilizatorul sudo nu este o practică recomandată, dar este inclusă aici, deoarece poate face configurația serverului mult mai convenabilă și mai puțin frustrantă, mai ales în timpul sesiunilor de administrare a sistemelor mai lungi. Dacă sunteți îngrijorat de implicațiile de securitate, puteți întoarce întotdeauna modificarea de configurare la original după ce terminați sarcinile de administrare.

Ori de câte ori doriți să vă conectați la rootcontul de utilizator din contul de sudoutilizator, puteți utiliza una dintre următoarele comenzi:

sudo -i
sudo su -

Puteți ieși din rootcont și reveni în contul dvs. de sudoutilizator oricând:

exit

Pasul 2: Actualizați sistemul FreeBSD 11

Înainte de a instala pachetele pe instanța serverului FreeBSD, vom actualiza mai întâi sistemul.

Asigurați-vă că sunteți conectat la server cu un utilizator sudo non-root și executați următoarele comenzi:

sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade

Pasul 3: Instalați serverul web Apache

Instalați serverul web Apache:

sudo pkg install apache24

Introduceți ycând vi se solicită.

Acum folosiți sysrccomanda pentru a permite executarea automată a serviciului Apache:

sudo sysrc apache24_enable=yes

sysrcComanda actualizează /etc/rc.conffișierul de configurare, astfel încât , dacă doriți să verificați manual actualizarea de configurare puteți deschide pur și simplu /etc/rc.conffișierul cu editorul terminalul favorit:

vi /etc/rc.conf

Acum începeți serviciul Apache:

sudo service apache24 start

Puteți verifica rapid dacă apache rulează vizitând adresa IP sau domeniul instanței serverului din browserul dvs.:

http://YOUR_VULTR_IP_ADDRESS/

Veți vedea pagina implicită FreeBSD Apache care afișează textul:

It works!

Verificați fișierul dvs. de configurare implicit Apache pentru a vă asigura că DocumentRootdirectiva indică directorul corect:

sudo vi /usr/local/etc/apache24/httpd.conf

Opțiunea de DocumentRootconfigurare va arăta astfel:

DocumentRoot "/usr/local/www/apache24/data"

Acum trebuie să activăm mod_rewritemodulul Apache. Putem face acest lucru căutând fișierul de configurare Apache implicit mod_rewrite.

În mod implicit, mod_rewritemodulul Apache va fi comentat (ceea ce înseamnă că este dezactivat). Linia de configurare a unei instanțe curate Vultr FreeBSD 11 va arăta astfel:

#LoadModule rewrite_module libexec/apache24/mod_rewrite.so

Pur și simplu eliminați simbolul hash pentru a descărca linia și încărcați modulul. Acest lucru se aplică desigur și pentru orice alte module Apache necesare:

LoadModule rewrite_module libexec/apache24/mod_rewrite.so

De asemenea, trebuie să activăm modulele mod_authz_codeși mod_headers, de aceea asigurați-vă că sunt ambele necomentate:

LoadModule authz_core_module libexec/apache24/mod_authz_core.so
LoadModule headers_module libexec/apache24/mod_headers.so

Acum trebuie să modificăm Directorydirectiva Apache în același fișier de configurare, astfel încât mod_rewritesă funcționeze corect cu Selfoss RSS Reader.

Găsiți secțiunea fișierului de configurare cu care începe <Directory "/usr/local/www/apache24/data">și treceți AllowOverride nonela AllowOverride All. Rezultatul final (cu toate comentariile eliminate) va arăta astfel:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Acum salvați și ieșiți fișierul de configurare Apache.

Vom reporni Apache la sfârșitul acestui tutorial, însă repornirea regulată a lui Apache în timpul instalării și configurației este cu siguranță un obicei bun, așa că haideți să o facem acum:

sudo service apache24 restart

Pasul 4: Instalează PHP 7.1

Acum putem instala PHP 7.1 împreună cu toate modulele PHP necesare de Selfoss RSS Reader:

sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip php71-phar

FreeBSD 11 ne oferă opțiunea de a utiliza o dezvoltare php.inisau o producție php.ini. Deoarece vom instala Selfoss pe un server web public, vom folosi versiunea de producție. În primul rând, faceți o copie de rezervă php.ini-production:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup

Apoi soft-link php.ini-productioncătre php.ini:

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Trebuie să configurăm Apache pentru a utiliza efectiv PHP, așa că haideți să creăm un nou fișier numit php.confîn Includesdirectorul Apache :

sudo vi /usr/local/etc/apache24/Includes/php.conf

Introduceți următorul text în fișierul nou creat:

<IfModule dir_module>
    DirectoryIndex index.php index.html
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
</IfModule>

Salvați și ieșiți din fișier.

Acum, să repornim Apache pentru a putea reîncărca modificările de configurare:

sudo service apache24 restart

Pasul 5: Instalează serverul MariaDB (MySQL)

FreeBSD 11 implicită în utilizarea serverului de baze de date MariaDB, care este o sursă îmbunătățită, complet deschisă, dezvoltată în comunitate, înlocuire drop-in pentru serverul MySQL.

Instalați cea mai recentă versiune a serverului de baze de date MariaDB:

sudo pkg install mariadb102-server mariadb102-client

Porniți și permiteți executarea automată a serverului MariaDB la momentul de pornire:

sudo sysrc mysql_enable="yes"
sudo service mysql-server start

Asigurați-vă instalarea serverului MariaDB:

sudo mysql_secure_installation

Când vi se solicită să creați un utilizator MariaDB / MySQL root, selectați „Y” (pentru da) și apoi introduceți o rootparolă sigură . Pur și simplu răspundeți „Y” la toate celelalte întrebări da / nu, deoarece sugestiile implicite sunt cele mai sigure opțiuni.

Pasul 6: Creați o bază de date pentru Selfoss RSS Reader

Conectați-vă la shell-ul MariaDB ca rootutilizator MariaDB rulând următoarea comandă:

sudo mysql -u root -p

Pentru a accesa promptul de comandă MariaDB, introduceți rootparola MariaDB atunci când vi se solicită.

Executați următoarele întrebări pentru a crea o bază de date MariaDB și un utilizator de bază de date pentru Selfoss RSS Reader:

CREATE DATABASE selfoss_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON selfoss_db.* TO 'selfoss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Puteți înlocui numele bazei de date selfoss_dbși numele de utilizator selfoss_usercu ceva mai mult pe gustul dvs., dacă doriți. De asemenea, asigurați-vă că înlocuiți „UltraSecurePassword” cu o parolă de siguranță.

Pasul 7: Instalează fișierele Selfoss RSS Reader

Modificați directorul de lucru curent în directorul web implicit:

cd /usr/local/www/apache24/data

Directorul curent va fi acum: /usr/local/www/apache24/data. Puteți verifica acest lucru cu comanda pwd(imprimare director de lucru):

pwd

Acum folosiți wgetpentru a descărca pachetul de instalare Selfoss RSS Reader:

sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip

Vă rugăm să rețineți: cu siguranță, ar trebui să verificați cea mai recentă versiune accesând pagina de descărcare Selfoss RSS Reader .

Enumerați directorul curent pentru a verifica dacă ați descărcat cu succes fișierul:

ls -la

Eliminați index.html:

sudo rm index.html

Acum decomprimează arhiva zip:

sudo unzip selfoss-2.17.zip

Mutați toate fișierele de instalare în directorul rădăcină web:

sudo mv -v selfoss-2.17/* selfoss-2.17/.* /usr/local/www/apache24/data 2>/dev/null

Modificați proprietatea asupra fișierelor web pentru a evita orice probleme de permisiune:

sudo chown -R www:www * ./

Reporniți Apache din nou:

sudo service apache24 restart

Pasul 8: Instalați și executați Compozitor

Selfoss RSS Reader ne solicită să folosim composerpentru a descărca unele plugin-uri, așa că să le instalăm composer. Din păcate, versiunea binară pre-construită a compozitorului din depozitele de pachete FreeBSD nu este compatibilă cu PHP 7.1. Deci, în loc să instalați composercu pkgcomanda, o vom compila în schimb din sursă.

Mai întâi, să configurăm sistemul FreeBSD 11 pentru a compila software PHP folosind PHP versiunea 7.1 în locul celei implicite 5.6.

Creați un fișier nou în /etc/directorul numit make.conf:

sudo vi /etc/make.conf

Introduceți următorul text în fișier:

DEFAULT_VERSIONS+= php=7.1

Acum salvați și închideți fișierul.

În continuare, trebuie să descărcăm colecția de porturi FreeBSD folosind portsnapcomanda:

sudo portsnap fetch extract update

După portsnapfinalizarea comenzii, treceți la php-composerdirectorul codului sursă:

cd /usr/ports/devel/php-composer/

Acum începeți php-composercompilarea și instalarea folosind makecomanda:

sudo make install clean BATCH=yes

Când compilația este completă, treceți în directorul webroot:

cd /usr/local/www/apache24/data

Rulați compozitor folosind wwwutilizatorul:

sudo -u www composer install

Veți vedea câteva mesaje de avertizare composerdespre faptul că nu puteți scrie în cache, dar nu vă faceți griji prea mult despre asta, deoarece totul se va instala încă bine.

Acum suntem gata să trecem la ultimul pas.

Pasul 9: Instalare Selfoss RSS Reader

  1. Mai întâi trebuie să actualizăm fișierul de configurare Selfoss RSS Reader config.inicu setările corecte ale bazei de date, astfel încât să vă asigurați că sunteți încă în directorul webroot și defaults.inisă copiați pe config.ini:

    sudo cp -iv defaults.ini config.ini
    
  2. Apoi, deschideți config.inifișierul de configurare și adăugați următoarele valori ale bazei de date:

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=selfoss_db
    db_username=selfoss_user
    db_password=UltraSecurePassword
    db_port=3306
    
  3. Acum trebuie să adăugăm un hash de parolă config.ini, dar mai întâi trebuie să îl generam, așa că vizitați următoarea adresă URL din browser:

    http://YOUR_VULTR_IP_ADDRESS/password
    

    Apoi introduceți parola dorită în Passwordcâmp și faceți clic pe Generate.

    Pur și simplu copiați valoarea hash rezultată în opțiunea de parolă din config.inifișier, astfel încât secțiunea parolă arată acum așa:

    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    Notă: hash-ul dvs. de parolă va fi în mod evident diferit de hash-ul arătat mai sus și puteți alege un nume de utilizator diferit.

  4. Eliminați toate celelalte opțiuni needitate din config.inifișier, astfel încât fișierul dvs. de configurare complet să arate similar cu acesta:

    [globals]
    db_type=mysql
    db_host=localhost
    db_database=db1
    db_username=u1
    db_password=usecpass1
    db_port=3306
    username=admin
    password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
    salt=<long string of random chracters>
    

    Notă: Dacă doriți să modificați oricare dintre defaults.iniopțiuni, puteți să le adăugați pur și simplu în lista de opțiuni de mai sus.

    După ce ați terminat de editat fișierul de configurare, puteți salva și ieși fișierul.

  5. Acum vă puteți autentifica la Selfoss RSS Reader accesând pagina de pornire și introducând numele de utilizator și parola:

     http://YOUR_VULTR_IP_ADDRESS/
    
  6. Dacă doriți ca cititorul să-și actualizeze automat fluxurile (și aproape sigur că o faceți), va trebui să vă editați crontab:

    sudo crontab -e
    

    Adăugați următoarea linie pentru a reîmprospăta fluxurile pe oră:

    0 * * * * www cd /usr/local/www/apache24/data && php cliupdate.php
    

Dacă nu ați configurat încă setările Vultr DNS, puteți face acest lucru folosind panoul de control Vultr DNS.

De asemenea, este recomandabil să configurați site-ul dvs. pentru a utiliza SSL, deoarece majoritatea browserelor moderne vor avertiza atunci când site-urile nu au SSL activat și certificatele SSL sunt acum disponibile gratuit.

În orice caz, sunteți liber să începeți să adăugați feed-uri și să personalizați în continuare cititorul dvs., dacă doriți.

Lasă un comentariu

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe