Wallabag je bezplatná samohostitelná aplikace pro ukládání webových stránek. Jedná se o open source alternativu k jiné proprietární aplikaci pro pozdější čtení, jako je Pocket a Instapaper , což vám umožní spravovat seznam článků, na které jste na internetu narazili, pro pozdější přečtení.
Vlastnosti Wallabag:
- Wallabag odstraňuje reklamy a nesouvisející obsah z vašich webových stránek a poskytuje pouze text článku a související obrázky, aby byly snadno čitelné. To je zvláště užitečné, když si je prohlížíte na chytrém telefonu nebo tabletu.
- Wallabag ukládá vaše webové stránky do databáze, takže i když původní webová stránka zmizí, stále ji můžete zobrazit ve Wallabag .
- Všechny své webové stránky můžete snadno exportovat do souborů TXT, HTML, CSV, EPUB, MOBI, PDF nebo JSON.
- Můžete si také nainstalovat rozšíření prohlížeče Wallabag a aplikaci pro chytré telefony pro snadný přístup k Wallabag.
- Možnost importovat záložky z Firefoxu a prohlížeče Google Chrome (nebo Chromium).
Tento návod popisuje, jak hostovat vlastní službu Wallabag na Ubuntu 16.04 server nebo VPS.
Předpoklady
Chcete-li nainstalovat wallabag, budete potřebovat přístup k uživateli s rootem privilegia.
Předpokládá se, že jste již nastavili LAMP zásobník nebo LEMP zásobník na Ubuntu 16.04. Wallabag je schopen běžet s PHP>=5.5, včetně PHP 7. Pokud jste tak ještě neučinili, podívejte se na následující snadno použitelné průvodce.
- Nainstalujte Apache, MariaDB a PHP7 (LAMP Stack) na Ubuntu 16.04 LTS
- Nainstalujte Nginx, MariaDB a PHP7 (LEMP Stack) na Ubuntu 16.04 LTS
Až budete hotovi, vraťte se sem a čtěte dál.
Přihlaste se přes SSH
Přihlaste se na svůj server jako nový uživatel, kterého jste vytvořili (nebo root) přes SSH (zde nahraďte své uživatelské jméno a IP adresu serveru):
ssh new_user@server_IP_address
Odpovězte na výzvu k zadání hesla a dokončete proces přihlášení.
Začněme s instalací Wallabag!
Krok 1:Vytvořte databázi a uživatele pro Wallabag
Wallabag potřebuje databázi pro ukládání vašich webových stránek a v tomto tutoriálu budeme používat databázi MariaDB/MySQL. Spusťte následující příkaz a přihlaste se do prostředí MariaDB/MySQL jako root. Všimněte si, že toto je uživatel root MariaDB/MySQL, nikoli uživatel root systému Ubuntu 16.04.
mysql -u root -p
Pokud vidíte Access denied for user 'root'@'localhost' chyba, pak musíte zakázat ověřování unixových soketů.
Poté vytvořte novou databázi pro Wallabag pomocí následujícího příkazu. Tento tutoriál to pojmenuje wallabag, pro databázi můžete použít jakýkoli název.
create database wallabag;
Dále vytvořte nového uživatele databáze na localhost pomocí následujícího příkazu. Opět, tento tutoriál jej pojmenujte wallabaguser, můžete použít jakýkoli název, který se vám líbí.
create user wallabaguser@localhost;
Nastavte heslo pro uživatele. Nahraďte své heslo preferovaným heslem.
set password for wallabaguser@localhost= password("your-password"); Poté udělte veškerá oprávnění nové databáze novému uživateli, aby později mohl Wallabag zapisovat do databáze.
grant all privileges on wallabag.* to wallabaguser@localhost identified by 'your-password';
Aby se změny projevily, vyprázdněte tabulku oprávnění.
flush privileges;
Ukončete prostředí MariaDB:
exit;
Vaše webové stránky budou uloženy v wallabag_entry po dokončení instalace wallabag na konci tohoto tutoriálu.
Krok 2:Nainstalujte balíček php7.0-mysql
Další důležitá věc, kterou musíme udělat ohledně databáze, je nainstalovat balíček php7.0-mysql.
sudo apt install php7.0-mysql
Soubor php7.0-mysql packages poskytuje pdo_mysql ovladač, který použije wallabag pro připojení k databázi MariaDB/MySQL, jinak se k ní Wallabag nemá jak připojit. Pokud spouštíte PHP jako modul Apache, pak po instalaci balíčku musíte restartovat webový server Apache, aby byl ovladač povolen.
sudo systemctl restart apache2
Pokud používáte PHP s php7.0-fpm, nemusíte restartovat Apache nebo php7.0-fpm. pdo_mysql ovladač se po instalaci automaticky aktivuje.
Pokud si nejste jisti, zda používáte Apache module nebo php7.0-fpm a poté vytvořte test.php soubor v kořenovém adresáři dokumentu (ve výchozím nastavení /var/www/html ).
sudo nano /var/www/html/test.php
Poté do souboru vložte následující kód PHP.
<?php phpinfo(); ?>
Stiskněte Ctrl+O uložte soubor a poté stiskněte Ctrl+X k východu. Nyní do adresního řádku prohlížeče zadejte
server-ip-address/test.php
Nahraďte server-ip-address svou skutečnou IP. Měli byste vidět informace o PHP serveru. Pokud je hodnota Server API je Apache 2.0 Handler , pak používáte PHP7.0 jako modul Apache. Pokud je hodnota PHP7.0-FPM , pak PHP běží jako služba FPM.
Krok 3:Instalace Wallabag
Ke klonování úložiště Wallabag z Githubu použijeme nástroj git a později nainstalujeme Wallabag pomocí Composeru. Nainstalujte tedy git na Ubuntu 16.04 pomocí níže uvedeného příkazu:
sudo apt install git
Poté naklonujte úložiště Wallabag a změňte svůj pracovní adresář na úložiště.
git clone https://github.com/wallabag/wallabag.git cd wallabag
Poslední verze Wallabag (2.1.2) byla vydána 17. října 2016. Přejděte na verzi 2.1.2 pomocí git checkout příkaz.
git checkout 2.1.2
Než nainstalujeme Wallabag s Composerem, musíme se ujistit, že jsou na Ubuntu 16.04 nainstalována následující rozšíření PHP.
sudo apt install php7.0-bcmath php7.0-xml php7.0-zip php7.0-curl php7.0-mbstring php7.0-gd
Dále musíme nainstalovat Composer, což je správce závislostí pro PHP. Stáhne a nainstaluje za nás všechny potřebné závislosti Wallabag.
sudo apt install composer
Nyní nastavte proměnnou Symfony a nainstalujte Wallabag pomocí následujícího příkazu. SYMFONY_ENV=prod říká společnosti Symfony, že instalujeme Wallabag v produkčním prostředí. --no-dev flag zajišťuje, že v produkčním prostředí nejsou instalovány žádné vývojové balíčky.
SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
Během procesu instalace si skladatel stáhne a nainstaluje všechny potřebné závislosti.
Poté budete požádáni o zadání chybějících parametrů, aby app/config/parameters.yml soubor lze vytvořit. Composer již poskytuje některé výchozí hodnoty, ale nelze je použít pro produkční službu Wallabag.
Pro jednoduchost rozdělíme otázky na dvě části. První část je o parametrech databáze. Zde jsou otázky a parametry, které tento tutoriál poskytuje.
Creating the "app/config/parameters.yml" file
Some parameters are missing. Please provide them.
database_driver (pdo_sqlite): pdo_mysql
database_host (127.0.0.1): 127.0.0.1
database_port (null): 3306
database_name (symfony): wallabag
database_user (root): wallabaguser
database_password (null): your-password
database_path ('%kernel.root_dir%/../data/db/wallabag.sqlite'): /var/lib/mysql/wallabag
database_table_prefix (wallabag_): wallabag_
Tato první otázka je, jaký databázový ovladač, tedy jakou databázi chcete použít pro Wallabag. Výchozí ovladač je pdo_sqlite což znamená, že k ukládání webových stránek bude použita databáze SQLite. Tento článek bude používat MariaDB/MySQL, protože jsou rychlé a jsou nejoblíbenějším open source systémem pro správu relačních databází. Již jsme povolili pdo_mysql ovladač na začátku tohoto článku. Zadejte tedy pdo_mysql jako odpověď na první otázku.
Na ostatní otázky je snadné odpovědět. Zadejte 127.0.0.1 jako hostitel databáze a 3306 jako databázový port, protože ve výchozím nastavení bude MariaDB/MySQL naslouchat na 127.0.0.1:3306. Poté zadejte název databáze, uživatele databáze a heslo uživatele databáze, které jste vytvořili v kroku 1. Výchozí cesta k databázi MariaDB/MySQL je /var/lib/mysql . V tomto adresáři jsou uloženy všechny vaše databáze a tabulky. Předpona databázové tabulky vám pomůže rozpoznat, že tyto tabulky jsou pro Wallabag.
Nyní ve druhé části stačí stisknout Enter a použít výchozí hodnoty.
mailer_transport (smtp): mailer_host (127.0.0.1): mailer_user (null): mailer_password (null): locale (en): secret (ovmpmAWXRCabNlMgzlzFXDYmCFfzGv): twofactor_auth (true): twofactor_sender ([email protected]): fosuser_confirmation (true): from_email ([email protected]):
Jakmile to uděláte, spusťte následující příkaz.
php bin/console wallabag:install --env=prod
Zkontroluje systémové požadavky a nastaví databázi. Až se vás zeptá, zda chcete obnovit databázi, stiskněte n odpovědět ne. Poté budete požádáni o vytvoření uživatele admin.
Installing Wallabag... Step 1 of 5. Checking system requirements. +-----------------+--------+----------------+ | Checked | Status | Recommendation | +-----------------+--------+----------------+ | PDO Driver | OK! | | | curl_exec | OK! | | | curl_multi_init | OK! | | +-----------------+--------+----------------+ Success! Your system can run Wallabag properly. Step 2 of 5. Setting up database. It appears that your database already exists. Would you like to reset it? (y/N)n Creating schema Clearing the cache Step 3 of 5. Administration setup. Would you like to create a new admin user (recommended) ? (Y/n)y Username (default: wallabag) : your-admin-username Password (default: wallabag) : admin-pasword-here Email: admin-email-here Step 4 of 5. Config setup. Step 5 of 5. Installing assets. Wallabag has been successfully installed. Just execute `php bin/console server:run --env=prod` for using wallabag: http://localhost:8000
Krok 2 vytvoří databázové tabulky wallabag. Jakmile to uděláme, přesuneme adresář wallabag do /var/www/ .
cd ~ sudo mv ~/wallabag/ /var/www/
Poté nastavte uživatele Apache (www-data) jako vlastníka.
sudo chown www-data:www-data /var/www/wallabag -R
Krok 4:Nastavení virtuálního hostitele Apache
Vytvořte konfigurační soubor virtuálního hostitele pro Wallabag.
sudo nano /etc/apache2/sites-available/wallabag.conf
Pokud používáte PHP jako modul Apache, zkopírujte a vložte následující text do konfiguračního souboru. Nahraďte wallabag.example.com s vlastním názvem domény. Také byste měli nasměrovat název své domény na IP adresu vašeho serveru Ubuntu 16.04 v DNS.
<VirtualHost *:80>
ServerName wallabag.exmaple.com
ServerAlias wallabag.example.com
DocumentRoot /var/www/wallabag/web
<Directory /var/www/wallabag/web>
AllowOverride None
Order Allow,Deny
Allow from All
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
</Directory>
# uncomment the following lines if you install assets as symlinks
# or run into problems when compiling LESS/Sass/CoffeScript assets
# <Directory /var/www/wallabag>
# Options FollowSymlinks
# </Directory>
# optionally disable the RewriteEngine for the asset directories
# which will allow apache to simply reply with a 404 when files are
# not found instead of passing the request into the full symfony stack
<Directory /var/www/wallabag/web/bundles>
<IfModule mod_rewrite.c>
RewriteEngine Off
</IfModule>
</Directory>
ErrorLog /var/log/apache2/wallabag_error.log
CustomLog /var/log/apache2/wallabag_access.log combined
</VirtualHost>
Výše uvedená konfigurace používá PHP jako modul Apache, pokud chcete spouštět PHP s php7.0-fpm, přidejte ProxyPassMatch pravidlo níže CustomLog .
..... CustomLog /var/log/apache2/wallabag_access.log combined ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/run/php/php7.0-fpm.sock|fcgi://localhost/var/www/wallabag/web/ </VirtualHost>
Uložte a zavřete soubor. Ve výše uvedené konfiguraci jsme k přepsání URL použili modul Apache rewrite. Musíme se ujistit, že mod_rewrite je povoleno spuštěním následujícího příkazu, aby přepisování URL fungovalo a frontend Wallabag se mohl správně zobrazit.
sudo a2enmod rewrite
Poté povolte tohoto virtuálního hostitele vytvořením symbolického odkazu.
sudo ln -s /etc/apache2/sites-available/wallabag.conf /etc/apache2/sites-enabled/
A aby se výše uvedené změny projevily, restartujte Apache.
sudo systemctl restart apache2
Nyní byste měli mít přístup k webovému rozhraní Wallabag na adrese wallabag.example.com a přihlaste se.

Nastavení blokového souboru serveru Nginx
Vytvořte soubor.
sudo nano /etc/nginx/conf.d/wallabag.conf
Zkopírujte a vložte následující text do konfiguračního souboru. Nahraďte wallabag.example.com svým vlastním názvem domény. Také byste měli nasměrovat název své domény na IP adresu vašeho serveru Ubuntu 16.04 v DNS.
server {
server_name wallabag.example.com;
root /var/www/wallabag/web;
location / {
# try to serve file directly, fallback to app.php
try_files $uri /app.php$is_args$args;
}
location ~ ^/app\.php(/|$) {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
internal;
}
error_log /var/log/nginx/wallabag_error.log;
access_log /var/log/nginx/wallabag_access.log;
} Uložte a zavřete soubor. Poté znovu načtěte Nginx, aby bylo možné povolit blokování serveru.
sudo systemctl reload nginx
Nyní byste měli mít přístup k webovému rozhraní wallabag na adrese wallabag.example.com a přihlaste se.
Nastavení základního serveru SMTP
Všimněte si, že k registraci nových uživatelů musí mít váš server Ubuntu 16.04 spuštěný server SMTP, aby bylo možné odesílat potvrzovací e-maily novým uživatelům. Pro tento účel můžete použít Postfix.
sudo apt install postfix
Během instalace budete požádáni o výběr typu konfigurace pro Postfix. Vyberte Internet Site takže Postfix může odesílat e-maily na jiné servery SMTP na internetu.

Do pole pro název systémové pošty zadejte něco jako wallabag.your-domain.com .

A nyní jsme konečně hotovi a můžeme začít ukládat webové stránky. Na zdraví!

Doufám, že vám tento návod pomohl nainstalovat Wallabag na server Ubuntu 16.04 s LAMP nebo LEMP. Jako vždy, pokud se vám tento příspěvek zdál užitečný, přihlaste se k odběru našeho bezplatného zpravodaje nebo nás sledujte na Google+, Twitteru nebo lajkujte naši stránku na Facebooku.