Polr adalah penyingkat URL sumber terbuka dan gratis yang memungkinkan Anda menghosting penyingkat tautan Anda sendiri. Itu ditulis dalam PHP dan Lumen, dan menggunakan MariaDB untuk menyimpan datanya. Dengan Polr, Anda dapat membuat tautan baru atau mencari tautan yang ada tanpa merusak kode yang ada.
Dalam tutorial ini, kami akan menunjukkan cara menginstal perangkat lunak Polr Link Shortener di server Debian 10.
Prasyarat
- Server yang menjalankan Debian 10.
- Nama domain yang valid ditunjukkan dengan IP server Anda. dalam tutorial ini, kita akan menggunakan domain polr.example.com.
- Kata sandi root dikonfigurasi di server Anda.
Memulai
Sebelum memulai, sebaiknya perbarui sistem Anda dengan versi terbaru. Anda dapat memperbarui sistem Anda dengan perintah berikut:
apt-get update -y
apt-get upgrade -y
Setelah memperbarui sistem, mulai ulang untuk menerapkan perubahan.
Instal Server LAMP
Pertama, Anda perlu menginstal server web Apache, server MariaDB, PHP, dan paket lainnya di sistem Anda. Anda dapat menginstal semuanya menggunakan perintah berikut:
apt-get install apache2 mariadb-server libapache2-mod-php php php-pdo php-mysql php-mbstring php-tokenizer php-json php-curl git wget unzip -y
Setelah semua paket diinstal, mulai layanan Apache dan MariaDB dan aktifkan untuk memulai setelah sistem di-boot ulang.
systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadb
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Konfigurasi Database MariaDB
Secara default, kata sandi root MariaDB tidak dikonfigurasi di Debian 10. Jadi, Anda harus menyetelnya terlebih dahulu.
Untuk melakukannya, masuk ke shell MariaDB dengan perintah berikut:
mysql
Setelah login, atur kata sandi root MariaDB Anda dengan perintah berikut:
MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("newpassword");
Selanjutnya buat database dan user untuk Polr dengan perintah berikut:
MariaDB [(none)]> CREATE DATABASE polrdb;
MariaDB [(none)]> GRANT ALL ON polrdb.* TO 'polr' IDENTIFIED BY 'password';
Selanjutnya, flush hak istimewa dan keluar dari shell MariaDB dengan perintah berikut:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Instal Komposer
Selanjutnya, Anda perlu menginstal Komposer di sistem Anda. Composer adalah manajer dependensi untuk PHP yang digunakan untuk menginstal semua dependensi PHP untuk proyek Anda.
Pertama, unduh Composer dengan perintah berikut:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Selanjutnya, Anda perlu memverifikasi integritas data skrip yang diunduh dengan membandingkan hash skrip SHA-384 dengan hash terbaru.
Untuk melakukannya, unduh tanda tangan penginstal Komposer terbaru dari repositori Git dan simpan dalam variabel bernama HASH:
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
Selanjutnya, verifikasi skrip instalasi dengan perintah berikut:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Jika hash cocok, Anda akan melihat output berikut:
Installer verified
Terakhir, instal Komposer menggunakan perintah berikut:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Setelah instalasi selesai, Anda akan melihat output berikut:
All settings correct for using Composer Downloading... Composer (version 1.9.2) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Instal Polr
Pertama, unduh versi terbaru Polr dari repositori Git ke direktori root web Apache:
cd /var/www/html
git clone https://github.com/cydrobolt/polr.git --depth=1
Setelah diunduh, ubah direktori ke polr dan instal semua dependensi yang diperlukan dengan perintah berikut:
cd polr
composer install --no-dev -o
Selanjutnya, aktifkan penginstal berbasis web dengan mengganti nama file berikut:
mv .env.setup .env
Selanjutnya, berikan izin yang tepat ke direktori polr seperti yang ditunjukkan di bawah ini:
chown -R www-data:www-data /var/www/html/polr/
chmod -R 755 /var/www/html/polr/
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Konfigurasi Apache untuk Polr
Selanjutnya, Anda perlu membuat file konfigurasi host virtual Apache untuk Polr. Anda dapat membuatnya dengan perintah berikut:
nano /etc/apache2/sites-available/polr.conf
Tambahkan baris berikut:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/polr/public ServerName polr.example.com <Directory /var/www/html/polr/public/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/polr_error.log CustomLog ${APACHE_LOG_DIR}/polr_access.log combined </VirtualHost>
Simpan dan tutup file setelah Anda selesai. Kemudian, aktifkan file host virtual Apache dan modul penulisan ulang dengan perintah berikut:
a2ensite polr.conf
a2enmod rewrite
Terakhir, restart layanan Apache untuk mengimplementasikan perubahan:
systemctl restart apache2
Pada titik ini, Polr diinstal dan dikonfigurasi. Sekarang Anda dapat melanjutkan ke langkah berikutnya.
Akses Antarmuka Web Polr
Sekarang, buka browser web Anda dan ketik URL http://polr.example.com. Anda akan diarahkan ke wizard penyiapan Polr seperti yang ditunjukkan di bawah ini:
Berikan informasi basis data Anda, setelan aplikasi, setelan akun admin, dan klik tombol Instal tombol. Setelah instalasi selesai, Anda akan melihat halaman berikut:
Klik masuk tombol. Anda akan diarahkan ke halaman login Polr:
Berikan nama pengguna, kata sandi admin Anda, dan klik LOGIN tombol. Anda akan melihat halaman berikut:
Sekarang, klik ADMIN => DASBOR di pojok kanan atas. Anda akan melihat dasbor Polr di halaman berikut:
Amankan Polr dengan Let's Encrypt Free SSL
Pertama, Anda perlu menginstal klien Certbot Let's Encrypt untuk mengunduh dan menginstal sertifikat SSL untuk domain Anda.
Anda dapat menginstalnya dengan perintah berikut:
apt-get install python-certbot-apache -y
Setelah terinstal, Anda dapat menjalankan perintah berikut untuk menginstal Let's Encrypt Certificate untuk domain Anda polr.example.com.
certbot --apache -d polr.example.com
Selama instalasi, Anda akan diminta untuk memberikan alamat email Anda dan menerima persyaratan layanan seperti yang ditunjukkan di bawah ini:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Obtaining a new certificate Performing the following challenges: http-01 challenge for polr.example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/polr-le-ssl.conf Deploying Certificate to VirtualHost /etc/apache2/sites-available/polr-le-ssl.conf Enabling available site: /etc/apache2/sites-available/polr-le-ssl.conf Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Selanjutnya, ketik 2 dan tekan Enter untuk mengunduh dan memasang sertifikat SSL gratis untuk domain Anda. Setelah instalasi selesai dengan sukses. Anda akan mendapatkan output berikut:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/polr.conf to ssl vhost in /etc/apache2/sites-available/ polr-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://polr.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=polr.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Situs web Polr Anda sekarang diamankan dengan Let's Encrypt SSL gratis. Anda dapat mengaksesnya menggunakan URL https://polr.example.com.
Kesimpulan
Selamat! Anda telah berhasil menginstal Polr di server Debian 10 dan mengamankannya dengan Let's Encrypt SSL. Anda sekarang dapat meng-host penyingkat tautan Anda sendiri menggunakan antarmuka web Polr. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.