GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Forum Vanilla di Ubuntu 18.04 LTS

Vanilla adalah forum diskusi open source gratis yang ditulis dalam PHP. Software Vanilla Forum didistribusikan di bawah lisensi GNU GPL2. Kode sumbernya tersedia melalui Github. Ini memiliki sistem add-on yang kaya yang dapat Anda manfaatkan untuk menambahkan fitur khusus ke forum Vanilla Anda. Konten untuk Forum Vanilla dapat ditulis menggunakan bahasa Penurunan harga. Dalam tutorial ini, kita akan melalui instalasi dan penyiapan Forum Vanilla di sistem Ubuntu 18.04 LTS dengan menggunakan Nginx sebagai server web, MySQL sebagai server database, dan secara opsional Anda dapat mengamankan lapisan transport dengan menggunakan klien acme.sh dan sertifikat Let's Encrypt otoritas untuk menambahkan dukungan SSL.

Persyaratan

Vanilla membutuhkan server dengan PHP, MySQL, dan perangkat lunak server web (seperti Apache atau Nginx). Anda mungkin perlu memiliki domain, dan sudah mengonfigurasinya di server Anda dengan DNS jika ingin menginstal di server produksi, tetapi jika tidak, Anda tidak memerlukan domain.

Forum Vanila minimal persyaratannya adalah:

  • PHP versi 7.0 atau yang lebih baru.
  • Ekstensi PHP mbstring, cURL, GD, dan PDO, MySQLi, OpenSSL.
  • MySQL versi 5.0 atau yang lebih baru (atau setara dengan Percona/MariaDB).
  • Perangkat lunak Server Web (Nginx, Apache ...).
  • Mode ketat MySQL dinonaktifkan.

Forum Vanilla sangat merekomendasikan :

  • PHP versi 7.2 atau yang lebih baru.
  • Ekstensi PHP mbstring, cURL, GD, dan PDO, MySQLi, OpenSSL.
  • MySQL versi 5.7 atau yang lebih baru (atau setara Percona/MariaDB).
  • Perangkat lunak server web (Nginx, Apache ...).
  • Enkripsi SSL.

CATATANPHP 7.0 telah mencapai akhir masa pakainya dan tidak akan lagi menerima patch keamanan, jadi sangat disarankan untuk menggunakan versi PHP yang lebih baru. Dukungan Vanilla untuk PHP 7.0 akan segera berakhir! Ubuntu 18.04 LTS dikirimkan dengan PHP 7.2 secara default, dan dengan demikian kita tidak perlu khawatir tentang versi PHP.

Prasyarat

  • Sistem operasi yang menjalankan Ubuntu 18.04 LTS.
  • Pengguna non-root dengan hak istimewa sudo.

Langkah awal

Periksa versi Ubuntu Anda:

lsb_release -ds
# Ubuntu 18.04.1 LTS

Siapkan zona waktu:

sudo dpkg-reconfigure tzdata

Perbarui paket sistem operasi Anda (perangkat lunak). Ini adalah langkah pertama yang penting karena memastikan Anda memiliki pembaruan dan perbaikan keamanan terbaru untuk paket perangkat lunak default sistem operasi Anda:

sudo apt update && sudo apt upgrade -y

Instal beberapa paket penting yang diperlukan untuk administrasi dasar sistem operasi Ubuntu:

sudo apt install -y curl wget vim git unzip socat bash-completion

Langkah 1 - Instal PHP dan ekstensi PHP yang diperlukan

Instal PHP, serta ekstensi PHP yang diperlukan:

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-curl php7.2-gd php7.2-mysql

Untuk menampilkan PHP yang dikompilasi dalam modul, Anda dapat menjalankan:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Periksa versi PHP:

php --version

# PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

Layanan PHP-FPM secara otomatis dimulai dan diaktifkan saat reboot pada sistem Ubuntu 18.04, jadi tidak perlu memulai dan mengaktifkannya secara manual. Kita bisa melanjutkan ke langkah berikutnya, yaitu instalasi dan setup database.

Langkah 2 - Instal MySQL dan buat database untuk Forum Vanilla

Vanilla Forum mendukung database MySQL, MariaDB, dan Percona. Dalam tutorial ini, kita akan menggunakan MySQL sebagai server database.

Instal server database MySQL:

sudo apt install -y mysql-server

Periksa versi MySQL:

mysql --version
# mysql  Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using  EditLine wrapper

Jalankan mysql_secure installation skrip untuk meningkatkan keamanan MySQL dan menyetel sandi untuk root MySQL pengguna:

sudo mysql_secure_installation

Jawab setiap pertanyaan:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Hubungkan ke shell MySQL sebagai pengguna root:

sudo mysql -u root -p
# Enter password

Buat database MySQL kosong dan pengguna untuk Forum Vanilla dan ingat kredensialnya:

mysql> CREATE DATABASE dbname;
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;

Keluar dari MySQL:

mysql> exit

Ganti dbnameusername dan password dengan nama Anda sendiri.

Langkah 3 - Instal acme.sh klien dan dapatkan sertifikat Let's Encrypt (opsional )

Mengamankan situs web Anda dengan HTTPS tidak diperlukan, tetapi ini adalah praktik yang baik untuk mengamankan lalu lintas situs Anda. Untuk mendapatkan sertifikat TLS dari Let's Encrypt, kami akan menggunakan klien acme.sh. Acme.sh adalah software shell unix murni untuk mendapatkan sertifikat TLS dari Let's Encrypt tanpa ketergantungan.

Unduh dan instal acme.sh:

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
./acme.sh --install --accountemail [email protected]
source ~/.bashrc
cd ~

Periksa versi acme.sh :

acme.sh --version
# v2.8.0

Dapatkan RSA dan ECC/ECDSA sertifikat untuk domain/hostname Anda:

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Jika Anda ingin sertifikat palsu untuk pengujian, Anda dapat menambahkan --staging tandai perintah di atas.

Setelah menjalankan perintah di atas, sertifikat your Anda dan kunci akan di:

  • Untuk RSA/home/username/example.com direktori.
  • Untuk ECC/ECDSA/home/username/example.com_ecc direktori.

Untuk membuat daftar sertifikat yang dikeluarkan, Anda dapat menjalankan:

acme.sh --list

Buat direktori untuk menyimpan sertifikat Anda. Kami akan menggunakan /etc/letsencrypt direktori.

mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Instal/salin sertifikat ke direktori /etc/letsencrypt.

# RSA
acme.sh --install-cert -d example.com \
--cert-file /etc/letsencrypt/example.com/cert.pem \
--key-file /etc/letsencrypt/example.com/private.key \
--fullchain-file /etc/letsencrypt/example.com/fullchain.pem \
--reloadcmd "sudo systemctl reload nginx.service"

# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc \
--cert-file /etc/letsencrypt/example.com_ecc/cert.pem \
--key-file /etc/letsencrypt/example.com_ecc/private.key \
--fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem \
--reloadcmd "sudo systemctl reload nginx.service"

Semua sertifikat akan diperpanjang secara otomatis setiap 60 hari.

Setelah mendapatkan sertifikat keluar dari pengguna root dan kembali ke pengguna sudo normal:

exit

Langkah 4 - Instal NGINX dan konfigurasikan NGINX untuk Forum Vanilla

Vanilla Forum dapat bekerja dengan baik dengan banyak perangkat lunak server web populer. Dalam tutorial ini, kami memilih Nginx. Jika Anda lebih memilih server web Apache daripada Nginx, kunjungi https://docs.vanillaforums.com/developer/backend/server-apache/ untuk mempelajari lebih lanjut.

Unduh dan instal Nginx dari repositori Ubuntu:

sudo apt install -y nginx

Periksa versi Nginx:

sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)

Konfigurasikan Nginx untuk Vanilla dengan menjalankan:

sudo vim /etc/nginx/sites-available/vanilla.conf

Dan isi file dengan konfigurasi berikut:

server {

listen 80;
listen 443 ssl http2;
server_name forum.example.com;
root /var/www/vanilla;
index index.php;

# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;

location ~* /\.git { deny all; return 403; }
location /build/ { deny all; return 403; }
location /cache/ { deny all; return 403; }
location /cgi-bin/ { deny all; return 403; }
location /uploads/import/ { deny all; return 403; }
location /conf/ { deny all; return 403; }
location /tests/ { deny all; return 403; }
location /vendor/ { deny all; return 403; }

location ~* ^/index\.php(/|$) {
include snippets/fastcgi-php.conf;
fastcgi_param SCRIPT_NAME /index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root/index.php;
fastcgi_param X_REWRITE 1;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}

location ~* \.php(/|$) {
rewrite ^ /index.php$uri last;
}

location / {
try_files $uri $uri/ @vanilla;
}

location @vanilla {
rewrite ^ /index.php$uri last;
}

}

CATATANUntuk konfigurasi Nginx yang lengkap dan siap produksi untuk Vanilla, kunjungi https://docs.vanillaforums.com/developer/backend/server-nginx/.

Aktifkan vanilla.conf baru konfigurasi dengan menautkan file ke sites-enabled direktori.

sudo ln -s /etc/nginx/sites-available/vanilla.conf /etc/nginx/sites-enabled

Periksa konfigurasi Nginx untuk kesalahan sintaks:

sudo nginx -t

Muat ulang layanan Nginx:

sudo systemctl reload nginx.service

Langkah 5 - Instal Forum Vanilla

Buat direktori root dokumen tempat Forum Vanilla seharusnya berada:

sudo mkdir -p /var/www/vanilla

Ubah kepemilikan /var/www/vanilla direktori ke {jour_user} :

sudo chown -R {your_user}:{your_user} /var/www/vanilla

CATATAN :Ganti {jour_user} dengan nama pengguna pengguna non-root yang pertama Anda buat.

Arahkan ke direktori root dokumen:

cd /var/www/vanilla

Unduh arsip zip Forum Vanilla:

wget https://open.vanillaforums.com/get/vanilla-core-2.6.4.zip

Ekstrak dan hapus arsip zip Vanilla:

unzip vanilla-core-2.6.4.zip
rm vanilla-core-2.6.4.zip

Berikan kepemilikan yang sesuai:

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

Navigasikan ke folder tempat Anda mengunggah Vanilla di browser web Anda dan ikuti petunjuk di layar.

Langkah 6 - Selesaikan Penginstalan dan Penyiapan Forum Vanilla

Setelah membuka situs Anda di browser web, Anda akan diarahkan ke halaman berikut:

Isi informasi yang diperlukan dan klik "Lanjutkan →" tombol untuk menyelesaikan instalasi dan pengaturan. Setelah itu, antarmuka admin Forum Vanilla akan muncul.

  • https://open.vanillaforums.com/
  • https://github.com/vanilla/vanilla

Ubuntu
  1. Cara Menginstal PHP 5.6 di Ubuntu 16.04 LTS

  2. Cara Menginstal PHP 7.2 di Ubuntu 18.04 LTS

  3. Cara Menginstal PHP 7.3 di Ubuntu 18.04 LTS

  1. Cara Menginstal PHP 8.0 di Ubuntu 20.04 / Ubuntu 18.04

  2. Cara Menginstal PHP 7.4 di Ubuntu 20.04 LTS

  3. Cara Menginstal PHP 8 di Ubuntu 18.04 LTS

  1. Cara Menginstal PHP di Ubuntu 18.04

  2. Cara Menginstal PHP 8 di Ubuntu 20.04 LTS

  3. Cara Menginstal PHP OPcache di Ubuntu 20.04 LTS