GNU/Linux >> Belajar Linux >  >> Ubuntu

Instal Wallabag di Server Ubuntu 16.04 dengan LAMP atau LEMP

Wallabag adalah aplikasi self-hostable gratis untuk menyimpan halaman web. Ini adalah alternatif open source untuk aplikasi baca nanti milik lainnya seperti Pocket dan Instapaper , memungkinkan Anda mengelola daftar artikel yang Anda temukan di Internet untuk dibaca nanti.

Fitur Wallabag:

  1. Wallabag menghapus iklan dan hal-hal yang tidak terkait dari halaman web Anda dan hanya menyediakan teks artikel dan gambar terkait sehingga dapat dibaca dengan mudah. Ini sangat berguna saat Anda melihatnya di smartphone atau tablet.
  2. Wallabag menyimpan halaman web Anda dalam database sehingga bahkan jika halaman web asli hilang, Anda masih dapat melihatnya di Wallabag .
  3. Anda dapat dengan mudah mengekspor semua halaman web Anda ke file TXT, HTML, CSV, EPUB, MOBI, PDF, atau JSON.
  4. Anda juga dapat menginstal ekstensi browser Wallabag dan aplikasi ponsel cerdas untuk mengakses Wallabag dengan mudah.
  5. Kemampuan untuk mengimpor bookmark dari Firefox dan browser Google Chrome ( atau Chromium).

Tutorial ini mencakup cara meng-host layanan Wallabag Anda sendiri di Ubuntu 16.04 server atau VPS.

Prasyarat

Untuk memasang wallabag, Anda harus memiliki akses ke pengguna dengan root hak istimewa.

Diasumsikan bahwa Anda telah menyiapkan LAMP tumpukan atau LEMP tumpukan di Ubuntu 16.04. Wallabag dapat berjalan dengan PHP>=5.5, termasuk PHP 7. Jika Anda belum melakukannya, lihat panduan yang mudah diikuti berikut ini.

  • Instal Apache, MariaDB dan PHP7 (LAMP Stack) di Ubuntu 16.04 LTS
  • Instal Nginx, MariaDB dan PHP7 (LEMP Stack) di Ubuntu 16.04 LTS

Setelah selesai, kembali ke sini dan baca terus.

Masuk Melalui SSH

Masuk ke server Anda sebagai pengguna baru yang Anda buat (atau root) melalui SSH (ganti nama pengguna dan alamat IP server Anda di sini):

ssh new_user@server_IP_address

Jawab permintaan kata sandi untuk menyelesaikan proses login.

Mari kita mulai memasang Wallabag!

Langkah 1:Buat Database dan Pengguna untuk Wallabag

Wallabag membutuhkan database untuk menyimpan halaman web Anda dan kita akan menggunakan database MariaDB/MySQL dalam tutorial ini. Jalankan perintah berikut untuk masuk ke shell MariaDB/MySQL sebagai root. Perhatikan bahwa ini adalah pengguna root MariaDB/MySQL, bukan pengguna root sistem Ubuntu 16.04.

mysql -u root -p

Jika Anda melihat Access denied for user 'root'@'localhost' kesalahan, maka Anda perlu menonaktifkan otentikasi soket unix.

Kemudian buat database baru untuk Wallabag menggunakan perintah berikut. Tutorial ini beri nama wallabag, Anda dapat menggunakan nama apa pun yang Anda suka untuk databasenya.

create database wallabag;

Selanjutnya, buat pengguna database baru di localhost menggunakan perintah berikut. Sekali lagi, tutorial ini beri nama wallabaguser, Anda dapat menggunakan nama apa pun yang Anda suka.

create user wallabaguser@localhost;

Tetapkan kata sandi untuk pengguna. Ganti kata sandi Anda dengan kata sandi pilihan Anda.

set password for wallabaguser@localhost= password("your-password");

Kemudian berikan semua izin database baru kepada pengguna baru agar nantinya Wallabag dapat menulis ke database.

grant all privileges on wallabag.* to wallabaguser@localhost identified by 'your-password';

Bersihkan tabel hak istimewa agar perubahan diterapkan.

flush privileges;

Keluar dari Shell MariaDB:

exit;

Halaman web Anda akan disimpan di wallabag_entry tabel setelah Anda selesai menginstal wallabag di akhir tutorial ini.

Langkah 2:Instal Paket php7.0-mysql

Hal penting lainnya yang perlu kita lakukan terkait database adalah menginstal paket php7.0-mysql.

sudo apt install php7.0-mysql

php7.0-mysql paket menyediakan pdo_mysql driver yang akan digunakan oleh wallabag untuk terhubung ke database MariaDB/MySQL, jika tidak, Wallabag tidak memiliki cara untuk menghubungkannya. Jika Anda menjalankan PHP sebagai modul Apache, maka setelah paket diinstal, Anda harus me-restart server Web Apache agar driver dapat diaktifkan.

sudo systemctl restart apache2

Jika Anda menjalankan PHP dengan php7.0-fpm, maka Anda tidak perlu me-restart Apache atau php7.0-fpm. pdo_mysql driver akan diaktifkan secara otomatis setelah diinstal.

Jika Anda tidak yakin apakah Anda menggunakan Apache module atau php7.0-fpm , lalu buat test.php file di bawah root dokumen (secara default /var/www/html ).

sudo nano /var/www/html/test.php

Kemudian paste kode PHP berikut ke dalam file.

<?php phpinfo(); ?>

Tekan Ctrl+O untuk menyimpan file, lalu tekan Ctrl+X untuk keluar. Sekarang di bilah alamat browser, masukkan

server-ip-address/test.php

Ganti sever-ip-address dengan IP Anda yang sebenarnya. Anda akan melihat informasi PHP server Anda. Jika nilai Server API adalah Apache 2.0 Handler , maka Anda menggunakan PHP7.0 sebagai Modul Apache. Jika nilainya PHP7.0-FPM , maka PHP berjalan sebagai layanan FPM.

Langkah 3:Instal Wallabag

Kami akan menggunakan alat git untuk mengkloning repositori Wallabag dari Github dan kemudian menginstal Wallabag dengan Komposer. Jadi instal git di Ubuntu 16.04 dengan perintah di bawah ini:

sudo apt install git

Kemudian kloning repositori Wallabag dan ubah direktori kerja Anda menjadi repositori.

git clone https://github.com/wallabag/wallabag.git

cd wallabag

Versi terbaru Wallabag (2.1.2) dirilis pada 17 Oktober 2016. Beralih ke versi 2.1.2 dengan git checkout perintah.

git checkout 2.1.2

Sebelum kita menginstal Wallabag dengan Composer, kita perlu memastikan bahwa ekstensi PHP berikut diinstal pada Ubuntu 16.04.

sudo apt install php7.0-bcmath php7.0-xml php7.0-zip php7.0-curl php7.0-mbstring php7.0-gd

Selanjutnya, kita perlu menginstal Composer yang merupakan manajer ketergantungan untuk PHP. Ini akan mengunduh dan menginstal semua dependensi Wallabag yang diperlukan bagi kami.

sudo apt install composer

Sekarang atur variabel Symfony dan instal Wallabag menggunakan perintah berikut. SYMFONY_ENV=prod memberitahu symfony bahwa kita sedang menginstal Wallabag di lingkungan produksi. --no-dev flag memastikan bahwa tidak ada paket pengembangan yang diinstal di lingkungan produksi.

SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist

Selama proses instalasi, komposer akan mengunduh dan menginstal semua dependensi yang diperlukan.

Setelah itu, Anda akan diminta untuk memberikan parameter yang hilang sehingga app/config/parameters.yml file dapat dibuat. Komposer sudah memberikan beberapa nilai default tetapi tidak dapat digunakan untuk layanan produksi Wallabag.

Untuk mempermudah, mari kita bagi pertanyaan menjadi dua bagian. Bagian pertama adalah tentang parameter database. Berikut adalah pertanyaan dan parameter yang disediakan tutorial ini.

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_

Pertanyaan pertama ini adalah driver database apa, yaitu database apa yang ingin Anda gunakan untuk Wallabag. Driver default adalah pdo_sqlite yang berarti database SQLite akan digunakan untuk menyimpan halaman web. Artikel ini akan menggunakan MariaDB/MySQL karena cepat dan merupakan sistem manajemen basis data relasi sumber terbuka yang paling populer. Kami telah mengaktifkan pdo_mysql driver di awal artikel ini. Jadi masukkan pdo_mysql sebagai jawaban untuk pertanyaan pertama.

Pertanyaan lainnya mudah dijawab. Masukkan 127.0.0.1 sebagai host basis data dan 3306 sebagai port database karena secara default database MariaDB/MySQL akan mendengarkan pada 127.0.0.1:3306. Kemudian masukkan nama database, pengguna database dan kata sandi pengguna database yang Anda buat pada langkah 1. Jalur database default MariaDB/MySQL adalah /var/lib/mysql . Semua database dan tabel Anda disimpan di bawah direktori ini. Awalan tabel database membantu Anda mengenali tabel ini untuk Wallabag.

Sekarang di bagian kedua Anda cukup menekan Enter untuk menggunakan nilai default.

 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]):

Setelah selesai, jalankan perintah berikut.

php bin/console wallabag:install --env=prod

Ini akan memeriksa persyaratan sistem dan mengatur database. Saat ditanya apakah Anda ingin mengatur ulang basis data, tekan n untuk menjawab tidak. Kemudian Anda akan diminta untuk membuat pengguna 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

Langkah 2 akan membuat tabel database wallabag. Setelah selesai, kita pindahkan direktori wallabag ke  /var/www/ .

cd ~

sudo mv ~/wallabag/ /var/www/

Kemudian atur pengguna Apache (www-data) sebagai pemilik.

sudo chown www-data:www-data /var/www/wallabag -R

Langkah 4:Siapkan Apache Virtual Host

Buat file konfigurasi host virtual untuk Wallabag.

sudo nano /etc/apache2/sites-available/wallabag.conf

Jika Anda menggunakan PHP sebagai modul Apache, salin dan tempel teks berikut ke dalam file konfigurasi. Ganti wallabag.example.com dengan nama domain Anda sendiri. Anda juga harus mengarahkan nama domain Anda ke alamat IP server Ubuntu 16.04 Anda di 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>

Konfigurasi diatas menggunakan PHP sebagai modul Apache, jika ingin menjalankan PHP dengan php7.0-fpm, maka tambahkan ProxyPassMatch aturan di bawah 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>

Simpan dan tutup file. Dalam konfigurasi di atas, kami menggunakan modul Apache rewrite untuk menulis ulang URL. Kita perlu memastikan mod_rewrite diaktifkan dengan menjalankan perintah berikut sehingga penulisan ulang URL akan berfungsi dan ujung depan Wallabag dapat ditampilkan dengan benar.

sudo a2enmod rewrite

Kemudian aktifkan host virtual ini dengan membuat tautan simbolis.

sudo ln -s /etc/apache2/sites-available/wallabag.conf /etc/apache2/sites-enabled/

Dan untuk menerapkan perubahan di atas, mulai ulang Apache.

sudo systemctl restart apache2

Sekarang Anda seharusnya dapat mengakses antarmuka web Wallabag Anda di wallabag.example.com dan masuk.

Menyiapkan File Blok Server Nginx

Buat filenya.

sudo nano /etc/nginx/conf.d/wallabag.conf

Salin dan tempel teks berikut ke dalam file konfigurasi. Ganti wallabag.example.com dengan nama domain Anda sendiri. Anda juga harus mengarahkan nama domain Anda ke alamat IP server Ubuntu 16.04 Anda di 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;
}

Simpan dan tutup file. Kemudian muat ulang Nginx agar blok server dapat diaktifkan.

sudo systemctl reload nginx

Sekarang Anda seharusnya dapat mengakses antarmuka web wallabag Anda di wallabag.example.com dan masuk.

Menyiapkan Server SMTP Dasar

Perhatikan bahwa untuk mendaftarkan pengguna baru, server Ubuntu 16.04 Anda harus menjalankan server SMTP untuk mengirim email konfirmasi ke pengguna baru. Anda dapat menggunakan Postfix untuk tujuan ini.

sudo apt install postfix

Selama instalasi, Anda akan diminta untuk memilih jenis konfigurasi untuk Postfix. Pilih Internet Site sehingga Postfix dapat mengirim email ke server SMTP lain di Internet.

Di bidang nama email sistem, masukkan sesuatu seperti wallabag.your-domain.com .

Dan sekarang kita akhirnya selesai dan dapat mulai menyimpan halaman web. Semangat!

Saya harap tutorial ini membantu Anda menginstal Wallabag di server Ubuntu 16.04 dengan LAMP atau LEMP. Seperti biasa, jika menurut Anda pos ini bermanfaat,  berlangganan buletin gratis kami atau ikuti kami di Google+, Twitter atau sukai halaman Facebook kami.


Ubuntu
  1. Pemantauan Server dengan Shinken di Ubuntu 16.04

  2. Cara Menginstal WordPress dengan LAMP Stack di Ubuntu 16.04

  3. Cara Menginstal WordPress dengan LAMP Stack di Ubuntu 20.04

  1. Instal WordPress dengan LAMP Stack di Ubuntu 20.04

  2. Instal WordPress di Ubuntu 16.04 / Ubuntu 14.04 dengan LAMP

  3. Instal phpMyAdmin dengan Apache di Ubuntu 20.04

  1. Cara Menginstal Server Database Percona di Ubuntu 20.04

  2. Instal ProjectSend di Ubuntu 20.04 dengan Nginx (LEMP Stack)

  3. Instal NextCloud di Ubuntu 18.04 dengan Nginx (LEMP Stack)