GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Grav CMS s Nginx na Ubuntu 16.04

Grav je moderní webová aplikace, která nevyžaduje žádnou databázi. Je to webová platforma založená na souborech, která je jednoduchá, rychlá a nevyžaduje žádnou instalaci. Grav využívá moderní technologie včetně Twig Templating pro šablonování, Markdown pro tvorbu obsahu, YAML pro jednoduchou konfiguraci, Parsedown a Doctrine cache pro výkonnostní vrstvu atd. Nástroj je napsán v PHP a je dodáván s výkonným Package Management System, který vám umožňuje spravovat Systém Grav, včetně instalace a upgradu samotného Grav, stejně jako motivů a pluginů.

V tomto tutoriálu vám krok za krokem ukážu, jak nainstalovat a nakonfigurovat Grav CMS na Ubuntu 16.04. Vzhledem k tomu, že Grav je založená na webové aplikaci PHP, musíme do systému nainstalovat PHP a abychom získali vyšší výkon, budeme používat PHP-FPM s webovým prohlížečem Nginx.

Předpoklady

  • Ubuntu 16.04
  • Oprávnění uživatele root

Co uděláme:

  1. Nainstalujte Nginx
  2. Nainstalujte a nakonfigurujte PHP-FPM
  3. Nainstalujte PHP Composer
  4. Stáhněte si a nainstalujte Grav CMS
  5. Nakonfigurujte virtuálního hostitele Nginx pro Grav
  6. Testování

Krok 1 – Instalace webového serveru Nginx

V tomto prvním kroku nainstalujeme webový server Nginx z úložiště Ubuntu. Než to uděláme, musíme aktualizovat všechny balíčky a úložiště pomocí následujících příkazů apt.

sudo apt update
sudo apt upgrade

Nyní nainstalujte webový server Nginx.

sudo apt install nginx -y

Po dokončení instalace spusťte službu a povolte její spuštění při spouštění systému, což můžete provést pomocí následujících příkazů systemctl.

systemctl start nginx
systemctl enable nginx

Webový server Nginx byl nainstalován na Ubuntu 16.04 a běží na výchozím portu HTTP 80. Zkontrolujte jej pomocí příkazu netstat následujícím způsobem.

netstat -plntu

A dostanete výsledek, jak je ukázáno níže.

Krok 2 – Instalace a konfigurace PHP-FPM

Nyní nainstalujeme a nakonfigurujeme PHP-FPM pro naši instalaci Grav. Nainstalujte balíčky PHP a PHP-FPM (včetně všech požadovaných rozšíření) pomocí následujícího příkazu.

sudo apt install -y php7.0 php7.0-fpm php7.0-cli php7.0-gd php7.0-mbstring php-pear php7.0-curl php7.0-dev php7.0-opcache php7.0-xml php7.0-zip

Nyní musíme nakonfigurovat PHP-FPM.

– Nainstalujte další rozšíření

Toto je volitelné, ale je to nejlepší pro výkon Grav. Některá další rozšíření nainstalujeme ručně z úložiště rozšíření PHP pomocí příkazu PECL.

Nainstalujte rozšíření 'apcu' (pro zvýšení výkonu mezipaměti) pomocí příkazu 'pecl' níže.

sudo pecl install apcu

Nyní vytvořte novou konfiguraci rozšíření 'apcu.ini' v adresáři '/etc/php/7.0/mods-available/'.

sudo vim /etc/php/7.0/mods-available/apcu.ini

Zde vložte následující konfiguraci.

extension=apcu.so

Uložte a ukončete.

Dále aktivujte rozšíření pomocí níže uvedených příkazů.

sudo ln -s /etc/php/7.0/mods-available/apcu.ini /etc/php/7.0/fpm/conf.d/20-apcu.ini
sudo ln -s /etc/php/7.0/mods-available/apcu.ini /etc/php/7.0/cli/conf.d/20-apcu.ini

Nyní nainstalujeme rozšíření 'YAML', abychom dále zlepšili výkon Grav. Před instalací rozšíření však musíme nainstalovat některé balíčky pomocí následujícího příkazu apt.

sudo apt install libyaml-dev unzip -y

Dále nainstalujte rozšíření yaml pomocí příkazu pecl.

sudo pecl install yaml-2.0.0

Po dokončení instalace vytvořte nový konfigurační soubor 'yaml.ini'.

sudo vim /etc/php/7.0/mods-available/yaml.ini

Zde vložte následující konfiguraci.

extension=yaml.so

Uložte a ukončete.

Nyní aktivujte rozšíření YAML.

sudo ln -s /etc/php/7.0/mods-available/yaml.ini /etc/php/7.0/fpm/conf.d/20-yaml.ini
sudo ln -s /etc/php/7.0/mods-available/yaml.ini /etc/php/7.0/cli/conf.d/20-yaml.ini

Byla přidána nová další rozšíření PHP pro Grav.

– Konfigurace fondu PHP-FPM pro Grav

Před vytvořením nové konfigurace fondu PHP-FPM musíme do systému přidat nového uživatele s názvem 'grav', což můžete provést pomocí příkazu useradd.

useradd -m -s /bin/bash grav
passwd grav

Nyní přejděte do adresáře '/etc/php/7.0/fpm/pool.d' a zálohujte výchozí konfiguraci 'www.conf'.

cd /etc/php/7.0/fpm/pool.d/
mv www.conf www.conf.bak

Dále vytvořte novou konfiguraci fondu PHP-FPM - 'grav.conf' - pro Grav.

vim grav.conf

Zde vložte následující konfiguraci.

[grav]

user = grav
group = grav

listen = /run/php/php7.0-fpm.sock

listen.owner = www-data
listen.group = www-data

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

chdir = /

Uložte a ukončete.

Restartujte službu PHP-FPM a povolte její spuštění při spouštění systému.

systemctl restart php7.0-fpm
systemctl enable php7.0-fpm

PHP-FPM nyní běží pod souborem 'php7.0-fpm.sock' – zkontrolujte jej pomocí příkazu netstat následujícím způsobem.

netstat -pl | grep php

A měli byste získat výsledek, jak je uvedeno níže.

Poznámka:

Pokud chcete zkontrolovat rozšíření apcu a yaml, můžete použít následující příkazy php.

sudo php -m | grep apcu
sudo php -m | grep yaml

Instalace a konfigurace pro PHP-FPM byla dokončena.

Krok 3 – Instalace PHP Composer

Skladatel je správce balíčků na úrovni aplikace pro PHP. Používá se pro správu závislostí PHP.

Nainstalujte PHP Composer pomocí následujícího příkazu.

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Po dokončení instalace zkuste spustit příkaz skladatel následujícím způsobem.

composer --version

PHP Composer byl nainstalován.

Krok 4 – Stáhnout a nainstalovat Grav

Nainstalujeme a spustíme nástroj jako 'grav' uživatel. Uživatel byl vytvořen v jednom z předchozích kroků.

Nejprve se přihlaste jako uživatel „grav“.

su - grav

Nyní vytvořte nový adresář 'www'.

mkdir -p ~/www
cd ~/www

Stáhněte si nejnovější verzi grav pomocí wget a přidejte do názvu souboru příponu '.zip'.

wget https://getgrav.org/download/core/grav/latest
mv latest latest.zip

Rozbalte soubor 'latest.zip' a přejmenujte adresář 'grav' na 'html'.

unzip latest.zip
mv grav/ html/

Nyní zpět ke kořenovým právům a změňte vlastníka skupiny na 'www-data'.

exit
cd /home/grav/www
sudo chown -R grav:www-data html/

Grav je nyní stažen a nainstalován uživatelem 'grav' do adresáře '/home/grav/www/html'.

Krok 5 – Konfigurace virtuálního hostitele Grav

V tomto kroku nakonfigurujeme virtuálního hostitele Nginx pro Grav. Vytvoříme nový soubor virtuálního hostitele s názvem 'grav' v adresáři 'sites-available' a poté aktivujeme virtuálního hostitele Grav.

Přejděte do konfiguračního adresáře '/etc/nginx' a vytvořte nový soubor 'grav' pomocí editoru vim.

cd /etc/nginx
vim sites-available/grav

Zde vložte následující konfiguraci virtuálního hostitele Grav Nginx.

server {
    ## Define Index
    #listen 80;
    index index.html index.php;

    ## Web root and Domain Name
    root /home/grav/www/html;
    server_name grav.hakase-labs.co;

    ## Begin - Index
    # for subfolders, simply adjust the rewrite:
    # to use `/subfolder/index.php`
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    ## End - Index

    ## Begin - PHP-FPM Configuration
    location ~ \.php$ {
        # Choose either a socket or TCP/IP address
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        # 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;
    }
    ## End - PHP

    ## Begin - Security
    # deny all direct access for these folders
    location ~* /(.git|cache|bin|logs|backups)/.*$ { return 403; }
    # deny running scripts inside core system folders
    location ~* /(system|vendor)/.*\.(txt|xml|md|html|yaml|php|pl|py|cgi|twig|sh|bat)$ { return 403; }
    # deny running scripts inside user folder
    location ~* /user/.*\.(txt|md|yaml|php|pl|py|cgi|twig|sh|bat)$ { return 403; }
    # deny access to specific files in the root folder
    location ~ /(LICENSE|composer.lock|composer.json|nginx.conf|web.config|htaccess.txt|\.htaccess) { return 403; }
    ## End - Security
}

Uložte a ukončete.

Dále aktivujte virtuálního hostitele a otestujte konfiguraci nginx.

ln -s /etc/nginx/sites-available/grav /etc/nginx/sites-enabled/
nginx -t

Poznámka: Ujistěte se, že se po testování konfigurace neobjeví žádná chyba Nginx.

Nyní restartujte služby Nginx a PHP-FPM.

systemctl restart nginx
systemctl restart php7.0-fpm

Konfigurace virtuálního hostitele Nginx Grav byla dokončena.

Krok 6 – Testování

Otevřete svůj webový prohlížeč a zadejte název domény webu Grav, moje je http://grav.hakase-labs.co/

A získáte výchozí domovskou stránku Grav, jak je uvedeno níže.

Instalace Grav Flat CMS pomocí PHP-FPM a webového serveru Nginx na Ubuntu 16.04 byla úspěšně dokončena.


Ubuntu
  1. Jak nainstalovat WordPress s Nginx na Ubuntu 18.04

  2. Jak nainstalovat Grav CMS na Ubuntu 15.04

  3. Jak nainstalovat Grav CMS na Ubuntu 18.04

  1. Jak nainstalovat MediaWiki s Nginx na Ubuntu 16.04

  2. Jak nainstalovat Magento s Nginx na Ubuntu 15.10

  3. Jak nainstalovat Mailpile s Nginx na Ubuntu 15.10

  1. Jak nainstalovat Redmine 3 s Nginx na Ubuntu 15.10

  2. Jak nainstalovat Piwik s Nginx na Ubuntu 15.10

  3. Jak nainstalovat Redmine 3.2 s Nginx na Ubuntu 16.04