Grav è un CMS flat-file open source scritto in PHP. Il codice sorgente di Grav è ospitato pubblicamente su GitHub . Questa guida ti mostrerà come installare Grav CMS su una nuova istanza di Fedora 28 Vultr.
Requisiti
- Server Web (Apache, Nginx, LiteSpeed o IIS). In questa guida useremo Nginx.
- PHP 5.5.9 o successivo
Prima di iniziare
Controlla la versione di Fedora.
cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)
Crea un nuovo account utente non root con sudoaccesso e passa ad esso.
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
NOTA : sostituisci johndoecon il tuo nome utente .
Imposta il fuso orario.
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Assicurati che il tuo sistema sia aggiornato.
sudo dnf check-upgrade || sudo dnf upgrade -y
Installa i pacchetti necessari.
sudo dnf install -y wget curl vim unzip
Per semplicità, disabilitare SELinux e Firewall.
sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld
Installa PHP e le estensioni PHP richieste
Installa le estensioni PHP e PHP.
sudo dnf install -y php-cli php-fpm php-common php-curl php-gd php-json php-mbstring php-xml php-zip php-opcache php-pecl-apcu
Controlla la versione
php --version
Avviare e abilitare il servizio PHP-FPM.
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
Installa Nginx.
sudo dnf install -y nginx
Controlla la versione
nginx -v
Avviare e abilitare il servizio Nginx.
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Configura Nginx. Esegui sudo vim /etc/nginx/conf.d/grav.confe popola il file con la seguente configurazione.
server {
listen 80;
server_name example.com;
root /var/www/grav;
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 unix:/run/php-fpm/www.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
}
}
Testare la configurazione di Nginx.
sudo nginx -t
Ricarica Nginx.
sudo systemctl reload nginx.service
Installa Grav
Creare una directory radice del documento.
sudo mkdir -p /var/www/grav
Cambia la proprietà della /var/www/gravdirectory in johndoe.
sudo chown -R johndoe:johndoe /var/www/grav
Passare alla cartella principale del documento.
cd /var/www/grav
Scarica e decomprimi Grav.
wget https://getgrav.org/download/core/grav-admin/1.4.8
unzip 1.4.8
mv grav-admin/* . && mv grav-admin/.* .
rm -rf grav-admin 1.4.8
Cambia la proprietà della /var/www/gravdirectory in nginx.
sudo chown -R nginx:nginx /var/www/grav
Esegui sudo vim /etc/php-fpm.d/www.confe imposta l'utente e il gruppo su nginx. Inizialmente, sarà impostato su utente e gruppo apache.
sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx
Riavvia il servizio PHP-FPM.
sudo systemctl restart php-fpm.service
Crea /var/lib/php/session/directory e cambia la proprietà in nginx.
sudo mkdir -p /var/lib/php/session/ && sudo chown -R nginx:nginx /var/lib/php/session/
Apri http://example.comnel tuo browser web e segui le istruzioni sullo schermo. Per accedere a Grav admin aggiungi /adminal tuo URL.