GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Craft CMS na Ubuntu 18.04 LTS

Craft je open source CMS napsaný v PHP. Craft vám umožňuje snadno vytvářet a spravovat skvěle vypadající obsah a navrhovat a stavět přesně to, co potřebujete. Je to bezpečný a škálovatelný CMS s velkým ekosystémem pluginů a zdrojový kód Craft je hostován na GitHubu. Tento výukový program vás provede instalační procedurou Craft CMS na čerstvém serveru Ubuntu 18.04 LTS využívajícím Nginx jako webový server a web zabezpečíme pomocí certifikátu Let's encrypt SSL.

Požadavky

Craft vyžaduje následující:

  • PHP verze 7.0 nebo vyšší s následujícími rozšířeními PHP:(ctype, cURL, GD nebo ImageMagick, iconv, JSON, Multibyte String, OpenSSL, PCRE, PDO MySQL Driver nebo PDO PostgreSQL Driver, PDO, Reflection, SPL, Zip, Intl, DOM)
  • MySQL 5.5+ s InnoDB, MariaDB 5.5+ nebo PostgreSQL 9.5+
  • Alespoň 256 MB paměti přidělené PHP
  • Alespoň 200 MB volného místa na disku

Předpoklady

  • Operační systém se systémem Ubuntu 18.04
  • Uživatel bez oprávnění root s právy sudo.

Počáteční kroky

Zkontrolujte svou verzi Ubuntu:

lsb_release -ds
# Ubuntu 18.04.1 LTS

Nastavte časové pásmo:

sudo dpkg-reconfigure tzdata

Aktualizujte balíčky operačního systému (software). Toto je důležitý první krok, protože zajišťuje, že máte nejnovější aktualizace a opravy zabezpečení pro výchozí softwarové balíčky vašeho operačního systému:

sudo apt update && sudo apt upgrade -y

Nainstalujte některé základní balíčky, které jsou nezbytné pro základní správu operačního systému Ubuntu:

sudo apt install -y curl wget vim git unzip socat

Krok 1 – Instalace PHP a požadovaných rozšíření PHP

Nainstalujte PHP a také potřebná rozšíření PHP:

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

Zkontrolujte verzi 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

Spusťte sudo vim /etc/php/7.2/fpm/php.ini a nastavte memory_limit alespoň 256MB :

memory_limit = 256M

Služba PHP-FPM se automaticky spouští a povoluje při restartu na systému Ubuntu 18.04, takže ji není nutné spouštět a povolovat ručně. Můžeme přejít k dalšímu kroku, kterým je instalace a nastavení databáze.

Krok 2 – Instalace MySQL/MariaDB a vytvoření databáze

Craft CMS podporuje databáze MySQL/MariaDB a PostgreSQL. V tomto tutoriálu použijeme MySQL jako databázový server.

Nainstalujte databázový server MySQL:

sudo apt install -y mysql-server

Zkontrolujte verzi MySQL:

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

Spusťte mysql_secure installation skript pro zlepšení zabezpečení MySQL a nastavení hesla pro MySQL root uživatel:

sudo mysql_secure_installation

Odpovězte na každou z otázek:

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

Připojte se k prostředí MySQL jako uživatel root:

sudo mysql -u root -p
# Enter password

Vytvořte prázdnou databázi MySQL a uživatele pro Craft CMS a zapamatujte si přihlašovací údaje:

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

Ukončete MySQL:

mysql> exit

Nahraďte dbname , username a password s vašimi vlastními jmény.

Krok 3 – Nainstalujte acme.sh klienta a získejte certifikát Let's Encrypt (volitelné )

Zabezpečení webu pomocí protokolu HTTPS není nutné, ale je dobrým zvykem zabezpečit provoz na webu. K získání certifikátu TLS od Let's Encrypt použijeme klienta Acme.sh. Acme.sh je čistě unixový shell software pro získávání certifikátů TLS z Let's Encrypt s nulovými závislostmi.

Stáhněte a nainstalujte 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 ~

Zkontrolujte verzi Acme.sh:

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

Získejte RSAECC/ECDSA certifikáty pro vaši doménu/název hostitele:

# 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

Po spuštění výše uvedených příkazů budou vaše certifikátyklíče bude v:

  • Pro RSA/etc/letsencrypt/example.com adresář.
  • Pro ECC/ECDSA/etc/letsencrypt/example.com_ecc adresář.

Krok 4 – Instalace a konfigurace Nginx

Craft CMS může dobře fungovat s mnoha oblíbenými softwaremi webových serverů. V tomto tutoriálu jsme vybrali Nginx.

Stáhněte si a nainstalujte nejnovější vydání hlavní řady Nginx z oficiálního úložiště Nginx.

Začněte stažením klíče PGP úložiště Nginx:

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

Přidejte klíč do apt programová klíčenka:

sudo apt-key add nginx_signing.key

Přidejte a nastavte hlavní úložiště APT 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

Aktualizujte seznam úložišť:

sudo apt update

Nainstalujte nejnovější balíčky Nginx hlavní řady:

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

Spusťte a povolte službu Nginx:

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

Zkontrolujte verzi Nginx:

sudo nginx -v
# nginx version: nginx/1.15.8

Nakonfigurujte Nginx pro Craft CMS spuštěním:

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

A naplňte soubor s následující konfigurací:

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 "";
  }

}

POZNÁMKA :Pro kompletní a produkčně připravenou konfiguraci Nginx pro Craft navštivte https://github.com/nystudio107/nginx-craft. Konfigurace je záměrně zjednodušena, aby byla konfigurace hustá a jednoduchá.

Otevřete nginx.conf soubor a nastavte user na www-data .

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

Otestujte konfiguraci Nginx:

sudo nginx -t

Znovu načtěte Nginx:

sudo systemctl reload nginx.service

Krok 5 – Instalace aplikace Composer

Nainstalujte Composer, správce závislostí PHP globálně:

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

Zkontrolujte verzi skladatele:

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

POZNÁMKA: Příkazy instalace Composeru se v budoucnu změní, takže pokud výše uvedené příkazy nefungují, podívejte se na https://getcomposer.org/download/ nejaktuálnější příkazy.

Krok 6 – Instalace CMS CMS

Craft CMS lze stáhnout pomocí Composer nebo ručním stažením .zip nebo tar.gz archiv. V tomto tutoriálu použijeme Composer ke stažení Craft CMS.

Vytvořte kořenový adresář dokumentů, kde by měl Craft CMS sídlit:

sudo mkdir -p /var/www/craft

Přejděte do kořenového adresáře dokumentu:

cd /var/www/craft

Změňte vlastnictví /var/www/craft adresář do johndoe .

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

Chcete-li vytvořit nový projekt Craft, spusťte tento příkaz:

composer create-project craftcms/craft .

Změňte vlastnictví /var/www/craft do adresáře www-data:

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

Ve webovém prohlížeči přejděte na http://<Hostname>/index.php?p=admin/install (nahrazením <Hostname> s názvem hostitele vašeho webového serveru). Pokud jste dosud udělali vše správně, měl by vás přivítat Průvodce nastavením Craftu.

Krok 7 – Dokončete nastavení CMS Craft

Po otevření instalační adresy URL by se měla objevit stránka jako níže. Klikněte na Install Craft tlačítko:

Přijměte licenci kliknutím na Rozumím tlačítko:

Vyplňte podrobnosti o databázi a klikněte na "Další" tlačítko:

Vytvořte si Craft účet a klikněte na "Další" tlačítko:

Nastavte své stránky a klikněte na "Dokončit" tlačítko:

Potom byste měli být přesměrováni na stránku správce Craft:

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

Ubuntu
  1. Jak nainstalovat Pico CMS na Ubuntu 18.04 LTS

  2. Jak nainstalovat PHP 7.3 na Ubuntu 18.04 LTS

  3. Jak nainstalovat PHP 7.4 na Ubuntu 20.04 LTS

  1. Jak nainstalovat PHP 7.4 / 7.3 / 7.2 na Ubuntu 18.04 / Ubuntu 16.04

  2. Jak nainstalovat PHP 7 na Ubuntu 14.04

  3. Jak nainstalovat PHP 7 na Ubuntu 15.04

  1. Jak nainstalovat Ariadne CMS na Ubuntu 18.04 LTS

  2. Jak nainstalovat PHP 5.6 na Ubuntu 16.04 LTS

  3. Jak nainstalovat BoltWire CMS na Ubuntu 18.04 LTS