GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Instal Grav CMS di CentOS 7

Grav adalah platform CMS berbasis file yang cepat, sederhana, dan fleksibel. Grav hadir dengan Sistem Manajemen Paket yang kuat untuk memungkinkan penginstalan sederhana dan peningkatan versi plugin dan tema, serta pembaruan Grav itu sendiri dengan mudah.

Arsitektur dasar Grav dirancang untuk menggunakan teknologi yang sudah mapan dan terbaik di kelasnya untuk memastikan bahwa Grav mudah digunakan dan mudah diperluas. Beberapa teknologi utama ini meliputi:

  • Twig Templateing:untuk kontrol antarmuka pengguna yang kuat
  • Penurunan harga:untuk pembuatan konten yang mudah
  • YAML:untuk konfigurasi sederhana
  • Parsedown:untuk Markdown cepat dan dukungan Markdown Ekstra
  • Cache Doktrin:lapisan untuk performa
  • Wadah Injeksi Ketergantungan Jerawat:untuk diperpanjang dan dirawat
  • Symfony Event Dispatcher:untuk penanganan event plugin
  • Konsol Symfony:untuk antarmuka CLI
  • Gregwar Image Library:untuk manipulasi gambar dinamis

Persyaratan

Grav sengaja dirancang dengan sedikit persyaratan. Grav dibuat dengan file teks biasa untuk konten Anda. Tidak ada basis data yang dibutuhkan.

Pastikan sistem Anda memenuhi persyaratan berikut:

  • Server Web (Apache, Nginx, LiteSpeed, Lightly, IIS, dll.) Kami akan menggunakan NGINX.
  • PHP versi 7.1.3 atau lebih tinggi

Prasyarat

  • Sistem operasi yang menjalankan CentOS 7.
  • Pengguna non-root dengan hak istimewa sudo.

Langkah awal

Periksa versi CentOS Anda:

cat /etc/centos-release
# CentOS Linux release 7.6.1810 (Core)

Siapkan zona waktu:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

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 yum update -y

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

sudo yum install -y curl wget vim git unzip socat bash-completion epel-release

Langkah 1 - Instal PHP dan ekstensi PHP yang diperlukan

Siapkan repo Webtatic YUM:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Instal PHP, serta ekstensi PHP yang diperlukan:

sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-curl php72w-gd php72w-json php72w-mbstring php72w-xml php72w-zip php72w-opcache php72w-pecl-apcu

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 (cli) (built: May 13 2019 18:03:04) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.17, Copyright (c) 1999-2018, by Zend Technologies

Mulai dan aktifkan layanan PHP-FPM:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

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

Mengamankan forum Anda dengan HTTPS tidak diperlukan, tetapi merupakan 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 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

Instal NGINX:

sudo yum install -y nginx

Periksa versi NGINX:

nginx -v
# nginx version: nginx/1.12.2

Mulai dan aktifkan layanan NGINX:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Konfigurasikan NGINX untuk Grav. Jalankan sudo vim /etc/nginx/conf.d/grav.conf dan tambahkan konfigurasi berikut.

server {
  
  listen 80;
  listen 443 ssl;
server_name example.com; root /var/www/grav;
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
index index.html index.php; location / { try_files $uri $uri/ /index.php?$query_string; } location ~* /(\.git|cache|bin|logs|backup|tests)/.*$ { return 403; } location ~* /(system|vendor)/.*\.(txt|xml|md|html|yaml|yml|php|pl|py|cgi|twig|sh|bat)$ { return 403; } location ~* /user/.*\.(txt|md|yaml|yml|php|pl|py|cgi|twig|sh|bat)$ { return 403; } location ~ /(LICENSE\.txt|composer\.lock|composer\.json|nginx\.conf|web\.config|htaccess\.txt|\.htaccess) { return 403; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; } }

Periksa konfigurasi NGINX untuk mengetahui kesalahan sintaks:

sudo nginx -t

Muat ulang layanan NGINX:

sudo systemctl reload nginx.service

Langkah 4 - Instal Grav CMS

Buat direktori root dokumen:

sudo mkdir -p /var/www/grav

Ubah kepemilikan /var/www/grav direktori ke johndoe:

sudo chown -R johndoe:johndoe /var/www/grav

Arahkan ke folder root dokumen:

cd /var/www/grav

Unduh dan unzip Grav:

wget https://getgrav.org/download/core/grav-admin/1.6.9
unzip 1.6.9
mv grav-admin/* . && mv grav-admin/.* .
rm -rf grav-admin 1.6.9

CATATAN: Versi 1.6.9 adalah versi saat ini dan mungkin berbeda saat Anda membaca ini. Silakan periksa situs web Grav untuk informasi terbaru.

Ubah kepemilikan /var/www/grav direktori ke nginx:

sudo chown -R nginx:nginx /var/www/grav

Jalankan sudo vim /etc/php-fpm.d/www.conf dan setel pengguna dan grup ke nginx . Awalnya, ini akan disetel ke pengguna dan grup apache:

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Mulai ulang layanan PHP-FPM.

sudo systemctl restart php-fpm.service

Buat /var/lib/php/session/ direktori dan ubah kepemilikan menjadi nginx:

sudo mkdir -p /var/lib/php/session/ && sudo chown -R nginx:nginx /var/lib/php/session/

Buka http://example.com di browser web Anda dan ikuti petunjuk di layar. Untuk mengakses admin Grav, tambahkan /admin ke URL Anda.

Langkah 5 - Selesaikan penyiapan Grav

Buat pengguna admin Grav:

Setelah pembuatan, Anda akan diarahkan ke dasbor admin:

Tautan

  • https://getgrav.org/
  • https://github.com/getgrav/grav

Cent OS
  1. Cara Menginstal PHP 5.5 di CentOS

  2. Cara Menginstal PHP 5.6 di CentOS 7

  3. Cara Menginstal PHP 7.3 di CentOS 8

  1. Cara Menginstal PHP 8 di CentOS 7

  2. Cara Menginstal PHP 8 di CentOS 8

  3. Cara Menginstal CMS Typesetter di CentOS

  1. Cara Menginstal PHP 7, 7.2 &7.3 Pada CentOS 7

  2. Cara Menginstal PHP di CentOS 8

  3. Cara Menginstal PHP 8 di CentOS 8 / RHEL 8