GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Craft CMS di Ubuntu 18.04 LTS

Craft adalah CMS open source yang ditulis dalam PHP. Craft memungkinkan Anda membuat dan mengelola konten yang tampak hebat dengan mudah, serta merancang dan membangun apa yang Anda butuhkan. Ini adalah CMS yang aman dan skalabel dengan ekosistem plugin besar dan kode sumber Craft dihosting di GitHub. Tutorial ini akan memandu Anda melalui prosedur penginstalan Craft CMS di server Ubuntu 18.04 LTS baru menggunakan Nginx sebagai server web dan kami akan mengamankan situs web dengan sertifikat SSL Let's encrypt.

Persyaratan

Kerajinan membutuhkan yang berikut:

  • PHP versi 7.0 atau lebih tinggi dengan ekstensi PHP berikut:(ctype, cURL, GD atau ImageMagick, iconv, JSON, Multibyte String, OpenSSL, PCRE, PDO MySQL Driver atau PDO Driver PostgreSQL, PDO, Reflection, SPL, Zip, Internasional, DOM)
  • MySQL 5.5+ dengan InnoDB, MariaDB 5.5+, atau PostgreSQL 9.5+
  • Setidaknya 256MB memori dialokasikan untuk PHP
  • Setidaknya 200MB ruang disk kosong

Prasyarat

  • Sistem operasi yang menjalankan Ubuntu 18.04
  • 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

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-curl php7.2-gd php-imagick php7.2-json php7.2-mbstring php7.2-mysql php7.2-pgsql php7.2-zip php7.2-intl php7.2-xml

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

Jalankan sudo vim /etc/php/7.2/fpm/php.ini dan atur memory_limit setidaknya 256MB :

memory_limit = 256M

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/MariaDB dan buat database

Craft CMS mendukung database MySQL/MariaDB dan PostgreSQL. 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 Craft CMS 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 dbname , username 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 mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~

Periksa versi Acme.sh :

/etc/letsencrypt/acme.sh --version
# v2.8.0

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

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256

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

  • Untuk RSA/etc/letsencrypt/example.com direktori.
  • Untuk ECC/ECDSA/etc/letsencrypt/example.com_ecc direktori.

Langkah 4 - Instal dan Konfigurasi Nginx

Craft CMS dapat bekerja dengan baik dengan banyak perangkat lunak server web populer. Dalam tutorial ini, kami memilih Nginx.

Unduh dan instal rilis arus utama Nginx terbaru dari repositori resmi Nginx.

Mulailah dengan mengunduh kunci PGP repositori Nginx:

wget https://nginx.org/keys/nginx_signing.key

Tambahkan kunci ke apt kunci program:

sudo apt-key add nginx_signing.key

Tambahkan dan siapkan repositori APT jalur utama Nginx:

sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit

Perbarui daftar repositori:

sudo apt update

Instal paket Nginx arus utama terbaru:

sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt

Mulai dan aktifkan layanan Nginx:

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

Periksa versi Nginx:

sudo nginx -v
# nginx version: nginx/1.15.8

Konfigurasikan Nginx untuk CMS Kerajinan dengan menjalankan:

sudo vim /etc/nginx/conf.d/craft.conf

Dan isi file dengan konfigurasi berikut:

server {

  listen 80;
  listen [::]:80;
  listen 443 ssl;
  listen [::]:443 ssl;

  server_name example.com www.example.com;

  root /var/www/craft/web;

  index index.php;

  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;

  location / {
    try_files $uri/index.html $uri $uri/ /index.php?$query_string;
  }

  location ~ [^/]\.php(/|$) {
    try_files $uri $uri/ /index.php?$query_string;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param HTTP_PROXY "";
  }

}

CATATAN :Untuk konfigurasi Nginx yang lengkap dan siap produksi untuk Craft, kunjungi https://github.com/nystudio107/nginx-craft. Konfigurasi sengaja disederhanakan agar konfigurasi tetap padat dan sederhana.

Buka nginx.conf file dan atur user ke www-data .

sudo vim /etc/nginx/nginx.conf
user www-data www-data;

Uji konfigurasi Nginx:

sudo nginx -t

Muat ulang Nginx:

sudo systemctl reload nginx.service

Langkah 5 - Instal Komposer

Instal Composer, pengelola ketergantungan PHP secara global:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

php -r "unlink('composer-setup.php');"

sudo mv composer.phar /usr/local/bin/composer

Periksa versi Komposer:

composer --version
# Composer version 1.8.0 2018-12-03 10:31:16

CATATAN: Perintah penginstalan komposer akan berubah di masa mendatang, jadi periksa https://getcomposer.org/download/ untuk perintah terbaru jika perintah di atas tidak berfungsi.

Langkah 6 - Instal CMS Craft

Craft CMS dapat diunduh dengan Composer atau dengan mengunduh .zip . secara manual atau tar.gz arsip. Dalam tutorial ini kita akan menggunakan Composer untuk mendownload Craft CMS.

Buat direktori root dokumen tempat CMS Kerajinan harus berada:

sudo mkdir -p /var/www/craft

Arahkan ke direktori root dokumen:

cd /var/www/craft

Ubah kepemilikan /var/www/craft direktori ke johndoe .

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

Untuk membuat proyek Kerajinan baru, jalankan perintah ini:

composer create-project craftcms/craft .

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

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

Di browser web Anda, buka http://<Hostname>/index.php?p=admin/install (menggantikan <Hostname> dengan nama host server web Anda). Jika Anda telah melakukan semuanya dengan benar sejauh ini, Anda akan disambut oleh Wizard Penyiapan Craft.

Langkah 7 - Selesaikan penyiapan CMS Craft

Setelah membuka URL instalasi Anda, halaman seperti di bawah ini akan muncul. Klik "Instal Kerajinan" tombol:

Terima lisensi dengan mengklik "Mengerti" tombol:

Isi detail database dan klik "Berikutnya" tombol:

Buat akun Kerajinan dan klik "Berikutnya" tombol:

Siapkan situs Anda dan klik "Selesaikan" tombol:

Setelah ini Anda akan diarahkan ke halaman admin Craft:

  • https://craftcms.com/
  • https://github.com/craftcms/cms
  • https://github.com/nystudio107/nginx-craft

Ubuntu
  1. Cara Menginstal Pico CMS di Ubuntu 18.04 LTS

  2. Cara Menginstal PHP 7.4 / 7.3 / 7.2 di Ubuntu 18.04 / Ubuntu 16.04

  3. Cara Memasang BoltWire CMS di Ubuntu 18.04 LTS

  1. Cara Menginstal PHP 7 di Ubuntu 14.04

  2. Cara Menginstal PHP 7 di Ubuntu 15.04

  3. Cara Menginstal PHP 5.6 di Ubuntu 16.04 LTS

  1. Cara Menginstal CMS Ariadne di Ubuntu 18.04 LTS

  2. Cara Menginstal PHP 7.3 di Ubuntu 18.04 LTS

  3. Cara Menginstal PHP 7.4 di Ubuntu 20.04 LTS