GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Grav CMS mit Nginx unter Ubuntu 20.04

Grav ist ein kostenloses Open-Source- und Flat-File-CMS, das keine Datenbank benötigt. Es basiert auf PHP und bietet mehrere Funktionen, die anderen CMS wie WordPress, Joomla usw. möglicherweise nicht zur Verfügung stehen. Es ist einfach, benutzerfreundlich und enthält einige der Schlüsseltechnologien, darunter Twig Templating, Markdown, YAML, Parsedown, Doctrine Cache, Gregwar Image Library und Symfony Console.

In diesem Tutorial zeige ich Ihnen, wie Sie Grav CMS mit Nginx und Let’s Encrypt SSL auf einem Ubuntu 20.04-Server installieren.

Voraussetzungen

  • Ein Server mit Ubuntu 20.04.
  • Ein gültiger Domainname, auf den Ihre Server-IP verweist.
  • Auf dem Server ist ein Root-Passwort konfiguriert.

Erste Schritte

Aktualisieren Sie zuerst die Systempakete auf die aktualisierte Version, indem Sie den folgenden Befehl ausführen:

apt-get update -y

Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.

Nginx und PHP installieren

Zuerst müssen Sie den Nginx-Webserver, PHP und andere PHP-Erweiterungen auf Ihrem System installieren. Sie können alle mit dem folgenden Befehl installieren:

apt-get install nginx php php-cli php-fpm php-common php-curl php-gd php-json php-mbstring php-xml php-zip php-opcache php-apcu unzip -y

Sobald alle Pakete installiert sind, überprüfen Sie die PHP-Version mit dem folgenden Befehl:

php --version

Sie sollten die folgende Ausgabe erhalten:

PHP 7.4.3 (cli) (erstellt:5. Juli 2021 15:13:35) (NTS)Copyright (c) The PHP GroupZend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.3, Urheberrecht (c), von Zend Technologies

Bearbeiten Sie als Nächstes die Datei php.ini und nehmen Sie einige Änderungen vor:

nano /etc/php/7.4/fpm/php.ini

Ändern Sie die folgenden Zeilen:

memory_limit =256Mupload_max_filesize =100Mmax_execution_time =360max_input_vars =1500date.timezone =America/Chicago

Speichern und schließen Sie die Datei und starten Sie dann den PHP-FPM-Dienst neu, um die Änderungen zu übernehmen:

systemctl startet php7.4-fpm neu

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Grav CMS

Als Nächstes müssen Sie das Grav-CMS in das Nginx-Web-Root-Verzeichnis herunterladen. Sie können es mit dem folgenden Befehl von der Grav-Downloadseite herunterladen:

cd /var/www/html
wget https://getgrav.org/download/core/grav-admin/1.7.17

Sobald der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei mit dem folgenden Befehl:

1.7.17 entpacken

Als nächstes benennen Sie das extrahierte Verzeichnis mit dem folgenden Befehl in grav um:

mv grav-admin grav

Legen Sie als Nächstes den richtigen Besitz für das grav-Verzeichnis fest:

chown -R www-data:www-data /var/www/html/grav

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Nginx für Grav CMS konfigurieren

Als Nächstes müssen Sie eine Konfigurationsdatei für den virtuellen Nginx-Host erstellen, um Grav CMS zu hosten. Sie können es mit dem folgenden Befehl erstellen:

nano /etc/nginx/conf.d/grav.conf

Fügen Sie die folgenden Zeilen hinzu:

server {listen 80;server_name grav.example.com;root /var/www/html/grav;index index.html index.php;ort / { 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:/var/run/php/php7.4-fpm.sock; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; schließen Sie fastcgi_params ein; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; }}

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und überprüfen Sie dann Nginx auf Syntaxfehler:

nginx -t

Sie sollten die folgende Ausgabe erhalten:

nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich

Starten Sie abschließend den Nginx-Dienst neu, um die Änderungen zu übernehmen:

systemctl startet nginx neu

Sie können den Status von Nginx auch mit dem folgenden Befehl überprüfen:

systemctl status nginx

Sie sollten die folgende Ausgabe sehen:

? nginx.service - Ein Hochleistungs-Webserver und ein Reverse-Proxy-Server Geladen:geladen (/lib/systemd/system/nginx.service; aktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Fr. 09.07.2021 06 :45:28 UTC; vor 3s Dokumente:man:nginx(8) Prozess:33099 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process an; (code=beendet, status=0/SUCCESS) Prozess:33110 ExecStart=/usr/sbin/nginx -g daemon on; master_process an; (code=exited, status=0/SUCCESS) Main PID:33111 (nginx) Tasks:2 (limit:2353) Memory:2.6M CGroup:/system.slice/nginx.service ??33111 nginx:master process /usr/ sbin/nginx -g Daemon an; master_process an; ??33112 nginx:worker processJul 09 06:45:28 node1 systemd[1]:Starten eines Hochleistungs-Webservers und eines Reverse-Proxy-Servers... 09.Jul 06:45:28 node1 systemd[1]:Begonnen A high performance Webserver und einen Reverse-Proxy-Server.

Sobald alles in Ordnung ist, können Sie mit dem nächsten Schritt fortfahren.

Zugriff auf Grav CMS

Sie können jetzt über die URL http://grav.example.com auf die Grav CMS-Webbenutzeroberfläche zugreifen . Sie sollten den folgenden Bildschirm sehen:

Legen Sie Ihren Admin-Benutzernamen und Ihr Passwort fest und klicken Sie auf Benutzer erstellen Taste. Sie werden zum Grav CMS-Dashboard weitergeleitet:

Konfigurationsseite

Kontoseite

Plugins-Seite

Tools-Seite

Sicheres Grav CMS mit Let's Encrypt SSL

Als Nächstes müssen Sie das Certbot-Clientpaket installieren, um Let's Encrypt SSL zu installieren und zu verwalten.

Installieren Sie zuerst den Certbot mit dem folgenden Befehl:

apt-get install python3-certbot-nginx -y

Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um Let's Encrypt SSL auf Ihrer Website zu installieren:

certbot --nginx -d grav.example.com

Sie werden aufgefordert, eine gültige E-Mail-Adresse anzugeben und die unten aufgeführten Nutzungsbedingungen zu akzeptieren:

Speichern des Debug-Protokolls in /var/log/letsencrypt/letsencrypt.logAusgewählte Plugins:Authenticator nginx, Installer nginxE-Mail-Adresse eingeben (wird für dringende Verlängerungs- und Sicherheitshinweise verwendet) (Geben Sie „c“ zum Abbrechen ein):[email protected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Bitte lesen Sie die Nutzungsbedingungen unter https://letsencrypt.org /documents/LE-SA-v1.2-November-15-2017.pdf. Sie müssen zustimmen, um sich beim ACME-Server unter https://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - zu registrieren - - - - - - - - - - - - - - -(A)gree/(C)cancel:A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Wären Sie bereit, Ihre E-Mail-Adresse mit der Electronic Frontier Foundation, einem Gründungspartner des Let's Encrypt-Projekts und der gemeinnützigen Organisation, die Certbot entwickelt, zu teilen? Wir möchten Ihnen E-Mails über unsere Arbeit zur Verschlüsselung des Internets, EFF-Nachrichten, Kampagnen und Möglichkeiten zur Unterstützung der digitalen Freiheit senden.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(Y)es/(N)o:YBeziehen eines neuen ZertifikatsDurchführen der folgenden Herausforderungen:http-01-Herausforderung für grav.example.comWarten auf Überprüfung...Reinigung upherausforderungenBereitstellen des Zertifikats auf VirtualHost /etc/nginx/conf.d/grav.conf

Wählen Sie als Nächstes aus, ob der HTTP-Datenverkehr wie unten gezeigt an HTTPS umgeleitet werden soll:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1:Keine Weiterleitung - Machen Sie keine weitere Änderungen an der Webserver-Konfiguration.2:Umleitung - Alle Anfragen werden auf sicheren HTTPS-Zugriff umgeleitet. Wählen Sie dies für neue Websites oder wenn Sie sicher sind, dass Ihre Website auf HTTPS funktioniert. Sie können diese Änderung rückgängig machen, indem Sie die Konfiguration Ihres Webservers bearbeiten. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Wählen Sie die entsprechende Nummer [1-2] und dann [enter] (drücken Sie 'c' zum Abbrechen):2

Geben Sie 2 ein und drücken Sie die Eingabetaste, um die Installation abzuschließen. Sie sollten die folgende Ausgabe sehen:

Umleitung des gesamten Datenverkehrs auf Port 80 zu SSL in /etc/nginx/conf.d/grav.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Herzliche Glückwünsche! Sie haben https://grav.example.com erfolgreich aktiviert. Testen Sie Ihre Konfiguration unter:https://www.ssllabs.com/ssltest/analyze.html?d=grav.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -WICHTIGE HINWEISE:- Herzlichen Glückwunsch! Ihr Zertifikat und Ihre Kette wurden gespeichert unter:/etc/letsencrypt/live/grav.example.com/fullchain.pem Ihre Schlüsseldatei wurde gespeichert unter:/etc/letsencrypt/live/grav.example.com/privkey.pem Ihre Das Zertifikat läuft am 30.12.2021 ab. Um in Zukunft eine neue oder optimierte Version dieses Zertifikats zu erhalten, führen Sie einfach certbot erneut mit der Option „certonly“ aus. Um *alle* Ihre Zertifikate nicht interaktiv zu erneuern, führen Sie „certbot renew“ aus – Ihre Kontoanmeldeinformationen wurden in Ihrem Certbot-Konfigurationsverzeichnis unter /etc/letsencrypt gespeichert. Sie sollten jetzt ein sicheres Backup dieses Ordners erstellen. Dieses Konfigurationsverzeichnis enthält auch Zertifikate und private Schlüssel, die von Certbot erhalten wurden, daher ist es ideal, regelmäßige Backups dieses Ordners zu erstellen. - Wenn Sie Certbot mögen, erwägen Sie bitte, unsere Arbeit zu unterstützen, indem Sie:an ISRG / Let's Encrypt spenden:https://letsencrypt.org/donate an EFF spenden:https://eff.org/donate-le - Wir konnten uns nicht anmelden Sie die EFF-Mailingliste, weil Ihre E-Mail-Adresse ungültig zu sein scheint. Sie können es später erneut versuchen, indem Sie https://act.eff.org.
besuchen

Sie können jetzt sicher über das HTTPS-Protokoll auf Grav CMS zugreifen.

Schlussfolgerung

Herzliche Glückwünsche! Sie haben Grav CMS erfolgreich mit Nginx und Let’s Encrypt SSL auf dem Ubuntu 20.04-Server installiert. Sie können Ihre Website jetzt ganz einfach mit dem Grav CMS erstellen.


Ubuntu
  1. So installieren Sie MediaWiki mit Nginx unter Ubuntu 16.04

  2. So installieren Sie Grav CMS mit Nginx unter Ubuntu 16.04

  3. So installieren Sie Grav CMS unter Ubuntu 15.04

  4. So installieren Sie Grav CMS unter Ubuntu 18.04

  5. So installieren Sie PHP 7.4 mit Nginx unter Ubuntu 20.04

So installieren Sie OSClass mit Nginx unter Ubuntu 20.04

So installieren Sie Bolt CMS mit Nginx unter Ubuntu 20.04

So installieren Sie Craft CMS mit Nginx unter Ubuntu 20.04

So installieren Sie Grav CMS mit Nginx unter Debian 9

So installieren Sie WonderCMS unter Ubuntu 20.04 (mit Nginx)

So installieren Sie Laravel PHP Framework mit Nginx unter Ubuntu 20.04