GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal WonderCMS dengan Nginx di Debian 9

WonderCMS adalah CMS file datar sumber terbuka dan gratis, yang ditujukan untuk menjadi sangat kecil, ringan, dan sederhana. Itu dibangun dengan PHP, jQuery, HTML/CSS dan dikembangkan sejak 2008. Tidak diperlukan konfigurasi awal. Proses instalasi cukup mudah - unzip dan unggah 5 file. Semua file dapat dengan mudah dipindahkan, dicadangkan, dan dipulihkan dengan menyalin/menempelkan semua file ke lokasi lain. Memindahkannya ke host lain tidak memerlukan konfigurasi ulang. WonderCMS juga tidak memerlukan database tradisional/relasional seperti MySQL. Teknologi file datar memungkinkan WonderCMS untuk menyimpan semua data ke file teks (file datar) yang disebut database.js yang terstruktur dalam format JSON. Dalam tutorial ini, kita akan melalui instalasi dan pengaturan WonderCMS pada sistem Debian 9 dengan menggunakan Nginx sebagai server web, dan secara opsional Anda dapat mengamankan lapisan transport dengan menggunakan klien Acme.sh dan Let's Encrypt certificate authority untuk menambahkan dukungan SSL.

Persyaratan

Persyaratan untuk menginstal dan menjalankan WonderCMS adalah:

  • PHP versi 7.1 atau lebih tinggi dengan ekstensi curl, mbstring, dan zip.
  • Server web (Apache dengan mod_rewrite modul diaktifkan, Nginx, IIS).

Prasyarat

  • Sistem operasi Debian 9.
  • Pengguna non-root dengan sudo hak istimewa.

Langkah awal

Periksa versi Debian Anda:

lsb_release -ds
# Debian GNU/Linux 9.9 (stretch)

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 Debian:

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

Langkah 1 - Instal PHP dan ekstensi PHP yang diperlukan

Tambahkan repo pihak ketiga untuk instalasi PHP 7.2:

sudo apt install apt-transport-https lsb-release ca-certificates
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
sudo apt update

Instal PHP, serta ekstensi PHP yang diperlukan:

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

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

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Periksa versi PHP:

php --version

# PHP 7.2.17.18.04.1 (cli) (built: Apr 18 2019 14:12:38) ( 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.debian.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

Layanan PHP-FPM secara otomatis dimulai dan diaktifkan saat reboot pada sistem Debian 9, jadi tidak perlu memulai dan mengaktifkannya secara manual. Kita dapat melanjutkan ke langkah berikutnya, yaitu penyiapan SSL.

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

Mengamankan forum 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 perangkat lunak 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/nama host 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 menginginkan 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 3 - Instal dan konfigurasikan NGINX

WonderCMS dapat bekerja dengan baik dengan banyak perangkat lunak server web populer. Dalam tutorial ini, kami memilih NGINX.

Instal NGINX:

sudo apt install -y nginx

Periksa versi NGINX:

sudo nginx -v
# nginx version: nginx/1.10.3

Selanjutnya, konfigurasikan NGINX untuk WonderCMS. Jalankan sudo vim /etc/nginx/sites-available/wondercms.conf dan tambahkan konfigurasi berikut:

server {
  
  listen 80;
  listen 443 ssl;

ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;
server_name example.com; root /var/www/wondercms; index index.php; location / { if (!-e $request_filename) { rewrite ^/(.+)$ /index.php?page=$1 last; } } location ~ database.js { return 403; } location ~ \.php(/|$) { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; } }

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

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

Periksa konfigurasi NGINX untuk kesalahan sintaks:

sudo nginx -t

Muat ulang layanan NGINX:

sudo systemctl reload nginx.service

Langkah 4 - Instal WonderCMS

Buat direktori root dokumen untuk WonderCMS.

sudo mkdir -p /var/www/wondercms

Ubah kepemilikan /var/www/wondercms direktori ke [jour_username] :

sudo chown -R [your_username]:[your_username] /var/www/wondercms

Arahkan ke direktori root dokumen:

cd /var/www/wondercms

Unduh dan unzip sumber WonderCMS:

wget https://github.com/robiso/wondercms/releases/download/2.7.0/WonderCMS-2.7.0.zip
unzip WonderCMS-2.7.0.zip
rm WonderCMS-2.7.0.zip

Pindahkan file WonderCMS ke direktori root dokumen.

mv wondercms/* . && mv wondercms/.*.
rmdir wondercms

Ubah kepemilikan /var/www/wondercms direktori ke www-data:

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

Buka situs Anda di browser web dan masuk dengan sandi default admin dan ubah kata sandi default sesudahnya.

Tautan

  • https://www.wondercms.com/
  • https://github.com/robiso/wondercms

Debian
  1. Cara Menginstal PHP 7.4 di Debian 10

  2. Cara Menginstal PHP 8 di Debian 10

  3. Cara Menginstal PHP 7.2 di Debian 9

  1. Cara Menginstal Phorum dengan Nginx di Debian 9

  2. Cara Menginstal PHP 8.0 di Debian 11

  3. Cara Menginstal PHP 8.0 di Debian 10 / Debian 9

  1. Cara Menginstal PHP di Debian 11

  2. Cara Menginstal Magento dengan Nginx di Debian 10

  3. Cara Menginstal WonderCMS dengan Nginx di Debian 11