GNU/Linux >> LINUX-Kenntnisse >  >> Rocky Linux

So installieren Sie NEOS CMS mit Nginx und Lets Encrypt SSL unter Rocky Linux 8

Neos ist ein kostenloses und Open-Source-Content-Management-System (CMS), mit dem Sie komplexe Websites einfach erstellen können, ohne programmieren zu müssen. Sie können damit einen Blog, eine Nachrichten-Website, eine Portfolio-Seite oder eine Unternehmens-Website erstellen. Es bietet eine Vielzahl von Funktionen wie Inline-Bearbeitung, unterstützt mehrere Websites in einer einzigen Installation, integrierte SEO-Tools, menschenlesbare URLs, Plugin-Manager, Gerätevorschau und unterstützt mehrere Vorlagen. Es unterstützt moderne Technologien wie REST API, JSON, GraphQL und oEmbed.

In diesem Tutorial erfahren Sie, wie Sie Neos CMS auf einem Server mit Rocky Linux 8 OS installieren.

Voraussetzungen

  • Ein Server mit Rocky Linux 8.

  • Ein Nicht-Root-Sudo-Benutzer.

  • Stellen Sie sicher, dass alles aktualisiert ist.

    $ sudo dnf update
    
  • Installieren Sie grundlegende Dienstprogrammpakete. Einige davon sind möglicherweise bereits installiert.

    $ sudo dnf install wget curl nano unzip yum-utils -y
    

Schritt 1 – Firewall konfigurieren

Der erste Schritt besteht darin, die Firewall zu konfigurieren. Rocky Linux verwendet Firewalld Firewall. Überprüfen Sie den Status der Firewall.

$ sudo firewall-cmd --state
running

Die Firewall arbeitet mit verschiedenen Zonen, und die öffentliche Zone ist die Standardzone, die wir verwenden werden. Listet alle Dienste und Ports auf, die auf der Firewall aktiv sind.

$ sudo firewall-cmd --permanent --list-services

Es sollte die folgende Ausgabe zeigen.

cockpit dhcpv6-client ssh

HTTP- und HTTPS-Ports zulassen.

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https

Überprüfen Sie den Status der Firewall erneut.

$ sudo firewall-cmd --permanent --list-services

Sie sollten eine ähnliche Ausgabe sehen.

cockpit dhcpv6-client http https ssh

Laden Sie die Firewall neu, um die Änderungen zu aktivieren.

$ sudo firewall-cmd --reload

Schritt 2 – Nginx installieren

Rocky Linux wird mit einer älteren Version von Nginx ausgeliefert. Sie müssen das offizielle Nginx-Repository herunterladen, um die neueste Version zu installieren.

Erstellen und öffnen Sie /etc/yum.repos.d/nginx.repo Datei zum Erstellen des offiziellen Nginx-Repositorys.

$ sudo nano /etc/yum.repos.d/nginx.repo

Fügen Sie den folgenden Code ein.

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Nginx installieren.

$ sudo dnf install nginx

Überprüfen Sie die Installation.

$ nginx -v
nginx version: nginx/1.20.2

Aktivieren und starten Sie den Nginx-Dienst.

$ sudo systemctl enable nginx --now

Schritt 3 – PHP und Erweiterungen installieren

Für unser Tutorial müssen wir die neueste Version von PHP mithilfe des Repositorys von Remi installieren. Der erste Schritt besteht darin, sich das Epel-Repository zu besorgen.

$ sudo dnf install epel-release

Installieren Sie als Nächstes das Remi-Repository.

$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Suchen Sie nach verfügbaren PHP-Streams.

$ dnf module list php -y
Last metadata expiration check: 0:00:12 ago on Fri 03 Dec 2021 09:39:32 AM UTC.
Rocky Linux 8 - AppStream
Name                Stream                 Profiles                                 Summary
php                 7.2 [d]                common [d], devel, minimal               PHP scripting language
php                 7.3                    common [d], devel, minimal               PHP scripting language
php                 7.4                    common [d], devel, minimal               PHP scripting language

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name                Stream                 Profiles                                 Summary
php                 remi-7.2               common [d], devel, minimal               PHP scripting language
php                 remi-7.3               common [d], devel, minimal               PHP scripting language
php                 remi-7.4               common [d], devel, minimal               PHP scripting language
php                 remi-8.0               common [d], devel, minimal               PHP scripting language
php                 remi-8.1               common [d], devel, minimal               PHP scripting language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Die Standardversion ist 7.2. Aktivieren Sie das PHP 8.0-Repository von Remi.

$ sudo dnf module reset php
$ sudo dnf module enable php:remi-8.0

Installieren Sie als Nächstes PHP und die von Neos benötigten Erweiterungen zusammen mit ImageMagick.

$ sudo dnf install php-fpm php-mbstring php-xml php-curl php-mysqlnd php-zip php-cli php-imagick ImageMagick php-intl

Überprüfen Sie die Installation.

$ php --version
PHP 8.0.14 (cli) (built: Dec 16 2021 03:01:07) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.14, Copyright (c) Zend Technologies

Schritt 4 – MySQL Server installieren und konfigurieren

Wir werden die MySQL-Datenbank verwenden, um die Daten zu speichern. Das Appstream-Repository von Rocky Linux wird mit der neuesten Version von MySQL ausgeliefert.

Installieren Sie MySQL.

$ sudo dnf install mysql-server

Aktivieren und starten Sie den MySQL-Dienst.

$ sudo systemctl enable mysqld --now

Sichere MySQL-Installation.

$ sudo mysql_secure_installation

Im ersten Schritt werden Sie gefragt, ob Sie das Validate Password Plugin einrichten möchten, mit dem Sie die Stärke Ihres MySQL-Passworts testen können. Wählen Sie Y fortfahren. Im nächsten Schritt werden Sie aufgefordert, die Passwortvalidierungsstufe auszuwählen. Wählen Sie 2 Dies ist die stärkste Stufe und erfordert, dass Ihr Passwort mindestens acht Zeichen lang ist und eine Mischung aus Großbuchstaben, Kleinbuchstaben, Ziffern und Sonderzeichen enthält.

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No: Y

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2

Im nächsten Schritt werden Sie aufgefordert, ein Root-Passwort zu wählen. Wählen Sie ein sicheres Passwort, das die Anforderungen des Passwortvalidierungs-Plugins erfüllt. Im nächsten Schritt werden Sie gefragt, ob Sie mit dem gewählten Passwort fortfahren möchten. Drücken Sie y um fortzufahren.

Please set the password for root here.

New password:

Re-enter new password:

Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y

Drücken Sie Y und dann ENTER Schlüssel für alle folgenden Eingabeaufforderungen, um anonyme Benutzer und die Testdatenbank zu entfernen, Root-Anmeldungen zu deaktivieren und die neu festgelegten Regeln zu laden.

...
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.
...
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.
...
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
 - Dropping test database...
Success.
 - Removing privileges on test database...
Success.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
...
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.
All done!

Geben Sie die MySQL-Shell ein. Geben Sie Ihr Root-Passwort ein, um fortzufahren.

$ mysql -u root -p

Erstellen Sie neos Benutzer. Stellen Sie sicher, dass das Passwort die zuvor festgelegten Anforderungen erfüllt.

mysql> CREATE USER 'neos'@'localhost' IDENTIFIED BY 'Your_password2';

Erstellen Sie neosdb Datenbank.

mysql> CREATE DATABASE neosdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Gewähren Sie dem Benutzer Berechtigungen für die neosdb Datenbank.

mysql> GRANT ALL PRIVILEGES ON neosdb.* TO 'neos'@'localhost';
ALLE PRIVILEGIEN AUF neosdb.*

Verlassen Sie die Shell.

mysql> exit

Schritt 5 – Composer installieren

Composer ist ein Abhängigkeitsverwaltungstool für PHP und wird von Neos CMS benötigt, um zu funktionieren.

Laden Sie das Composer-Installationsskript herunter.

$ curl -sS https://getcomposer.org/installer -o composer-setup.php

Führen Sie die folgenden Befehle aus, um das Installationsprogramm zu überprüfen.

$ HASH=`curl -sS https://composer.github.io/installer.sig`
$ echo $HASH
$ php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Die obigen Befehle erfassen den Hashwert des Installationsprogramms und gleichen ihn mit Ihrem heruntergeladenen Skript ab. Sie sollten die folgende Ausgabe sehen, wenn das Installationsprogramm sicher ausgeführt werden kann.

Installer verified

Composer installieren.

$ sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Überprüfen Sie die Installation, indem Sie die Version überprüfen.

$ composer --version
Composer version 2.2.3 2021-12-31 12:18:53

Schritt 6 – Neos CMS installieren

Erstellen Sie ein Stammverzeichnis für die Installation von Neos.

$ sudo mkdir -p /var/www/neos

Ändern Sie den Eigentümer des Root-Verzeichnisses auf den aktuell angemeldeten Benutzer.

$ sudo chown -R $USER:$USER /var/www/neos

Wechseln Sie in das Stammverzeichnis.

$ cd /var/www/neos

Verwenden Sie Composer, um Neos und seine Abhängigkeiten zu installieren.

$ composer create-project --no-dev neos/neos-base-distribution .

Vergessen Sie nicht den Punkt am Ende des Befehls, der Composer anweist, es im aktuellen Verzeichnis zu installieren. Während der Installation erhalten Sie möglicherweise die folgenden Warnungen. Geben Sie y ein fortfahren. Die Installation wird dadurch nicht behindert.

 - Installing neos/composer-plugin (2.1.3): Extracting archive
neos/composer-plugin contains a Composer plugin which is currently not in your allow-plugins config. See https://getcomposer.org/allow-plugins
Do you trust "neos/composer-plugin" to execute code and wish to enable it now? (writes "allow-plugins" to composer.json) [y,n,d,?] y

  - Installing composer/package-versions-deprecated (1.11.99.4): Extracting archive
composer/package-versions-deprecated contains a Composer plugin which is currently not in your allow-plugins config. See https://getcomposer.org/allow-plugins
Do you trust "composer/package-versions-deprecated" to execute code and wish to enable it now? (writes "allow-plugins" to composer.json) [y,n,d,?] y

Ändern Sie den Besitz des Stammverzeichnisses auf nginx .

$ sudo ./flow core:setfilepermissions $USER nginx nginx

Fügen Sie den aktuell angemeldeten Benutzer zu nginx hinzu Gruppe.

$ sudo usermod -a -G nginx $USER

Das war es fürs Erste. Wir werden die verbleibenden Konfigurationen später durchführen.

Schritt 7 – SELinux-Berechtigungen konfigurieren

Verwenden Sie chcon von SELinux Befehl, um den Dateisicherheitskontext für den Webinhalt zu ändern, der von /var/www/neos bereitgestellt wird Verzeichnis.

$ sudo chcon -t httpd_sys_content_t /var/www/neos -R
$ sudo chcon -t httpd_sys_rw_content_t /var/www/neos -R

Konfigurieren Sie SELinux so, dass Netzwerkverbindungen für das Neos CMS zugelassen werden.

$ sudo setsebool -P httpd_can_network_connect on

Schritt 8 – SSL installieren und konfigurieren

Um ein SSL-Zertifikat mit Let’s Encrypt zu installieren, müssen wir das Certbot-Tool herunterladen. Wir brauchen das Epel-Repository, um Certbot zu installieren, aber wir können diesen Schritt überspringen, da wir es früher im Tutorial installiert haben.

Certbot installieren.

$ sudo dnf install certbot

Stoppen Sie den Nginx-Server, da er das Certbot-Tool stört.

$ sudo systemctl stop nginx

Generieren Sie ein SSL-Zertifikat.

$ sudo certbot certonly --standalone --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d neos.example.com

Der obige Befehl lädt ein Zertifikat in /etc/letsencrypt/live/neos.example.com herunter Verzeichnis auf Ihrem Server.

Erstellen Sie eine Diffie-Hellman-Gruppe Zertifikat.

$ sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048

Erstellen Sie ein Challenge-Web-Root-Verzeichnis für die automatische Verlängerung von Let's Encrypt.

$ sudo mkdir -p /var/lib/letsencrypt

Erstellen Sie einen Cron-Job, um das SSL zu erneuern. Es wird jeden Tag ausgeführt, um das Zertifikat zu überprüfen und bei Bedarf zu erneuern. Erstellen Sie dazu zunächst die Datei /etc/cron.daily/certbot-renew und zum Bearbeiten öffnen.

$ sudo nano /etc/cron.daily/certbot-renew

Fügen Sie den folgenden Code ein.

#!/bin/sh
certbot renew --cert-name neos.example.com --webroot -w /var/lib/letsencrypt/ --post-hook "systemctl reload nginx"

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Ändern Sie die Berechtigungen für die Aufgabendatei, um sie ausführbar zu machen.

$ sudo chmod +x /etc/cron.daily/certbot-renew

Schritt 9 – Nginx und PHP konfigurieren

PHP-FPM konfigurieren

Öffnen Sie die Datei /etc/php-fpm.d/www.conf .

$ sudo nano /etc/php-fpm.d/www.conf

Wir müssen den Unix-Benutzer/die Gruppe von PHP-Prozessen auf nginx setzen . Suchen Sie user=www-data und group=www-data Zeilen in der Datei und ändern Sie sie in nginx .

...
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
...

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Starten Sie den PHP-Dienst.

$ sudo systemctl start php-fpm

Nginx konfigurieren

Erstellen und öffnen Sie die Datei /etc/nginx/conf.d/neos.conf zum Bearbeiten.

$ sudo nano /etc/nginx/conf.d/neos.conf

Fügen Sie den folgenden Code ein.

server {
    listen       443 ssl http2;
    listen       [::]:443 ssl http2;
    server_name  neos.example.com;

    access_log  /var/log/nginx/neos.access.log;
    error_log   /var/log/nginx/neos.error.log;
    
    # SSL
    ssl_certificate      /etc/letsencrypt/live/neos.example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/neos.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/neos.example.com/chain.pem;
    ssl_session_timeout  5m;
    ssl_session_cache shared:MozSSL:10m;
    ssl_session_tickets off;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
    ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
    resolver 8.8.8.8;

    root /var/www/neos/Web/;
    index index.php;
    
    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    # Pass PHP Scripts To FastCGI Server
    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_pass unix:/run/php-fpm/www.sock; # Depends On The PHP Version
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_param FLOW_REWRITEURLS  1;
	fastcgi_param FLOW_CONTEXT  Production;
    	fastcgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
	fastcgi_param X-Forwarded-Port $proxy_port;
    	fastcgi_param REMOTE_ADDR $remote_addr;
	fastcgi_param REMOTE_PORT $remote_port;
    	fastcgi_param SERVER_ADDR $server_addr;
	fastcgi_param SERVER_NAME $http_host;
        fastcgi_read_timeout 300;
	fastcgi_buffer_size  128k;
    	fastcgi_buffers  256 16k;
	fastcgi_busy_buffers_size 256k;
    	fastcgi_temp_file_write_size 256k;
        include fastcgi_params;
        try_files $uri =404;
    }

    location ~ /_Resources/ {
   	access_log off;
	log_not_found off;
	expires max;

    	if (!-f $request_filename) {
    		rewrite "/_Resources/Persistent/([a-z0-9]{40})/.+\.(.+)" /_Resources/Persistent/$1.$2 break;
     		rewrite "/_Resources/Persistent(?>/[a-z0-9]{5}){8}/([a-f0-9]{40})/.+\.(.+)" /_Resources/Persistent/$1.$2 break;
    	}
    }
}

# enforce HTTPS
server {
    listen       80;
    listen       [::]:80;
    server_name  neos.example.com;
    return 301   https://$host$request_uri;
}
zurück

Beachten Sie, dass das Stammverzeichnis, das in der Nginx-Konfiguration verwendet werden soll, /var/www/neos/Web/ ist und nicht /var/www/neos/ .

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden, sobald Sie fertig sind.

Öffnen Sie die Datei /etc/nginx/nginx.conf zum Bearbeiten.

$ sudo nano /etc/nginx/nginx.conf

Fügen Sie die folgende Zeile vor der Zeile include /etc/nginx/conf.d/*.conf; hinzu .

server_names_hash_bucket_size  64;

Speichern Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.

Überprüfen Sie die Syntax der Nginx-Konfigurationsdatei.

$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Starten Sie den Nginx-Dienst neu, um die neue Konfiguration zu aktivieren.

$ sudo systemctl restart nginx

Schritt 10 – Schließen Sie die Neos-Installation ab

Starten Sie die URL https://neos.example.com in Ihrem Browser, und Sie erhalten den folgenden Einrichtungsbildschirm.

Klicken Sie auf Zur Einrichtung Schaltfläche, um fortzufahren. Sie werden zum Anmeldebildschirm weitergeleitet.

Führen Sie den folgenden Befehl im Terminal aus, um Ihr Passwort zu erhalten.

$ cat /var/www/neos/Data/SetupPassword.txt
The setup password is:

SCPUYmmQ

After you successfully logged in, this file is automatically deleted for security reasons.
Make sure to save the setup password for later use.

Geben Sie das Passwort ein und klicken Sie auf Anmelden fortfahren. Neos sucht nach PHP-Bildbibliotheken.

Klicken Sie auf Weiter, um fortzufahren. Sie werden aufgefordert, Ihre Datenbankanmeldeinformationen einzugeben. Geben Sie die in Schritt 4 erstellten Anmeldedaten ein. Sobald die Anmeldedaten verifiziert sind, erhalten Sie eine Verbindung hergestellt Meldung auf dem Bildschirm.

Klicken Sie auf Weiter, um fortzufahren . Sie werden aufgefordert, ein Administratorkonto einzurichten. Geben Sie Ihre Daten ein.

Klicken Sie auf Weiter fortfahren. Als Nächstes werden Sie aufgefordert auszuwählen, ob Sie eine Demo-Site importieren oder eine von Grund auf neu erstellen möchten. Wenn Sie eine neue Website von Grund auf neu erstellen möchten, müssen Sie beide Felder ausfüllen. Wenn Sie beispielsweise eine Nachrichtenseite erstellen, füllen Sie die Felder wie angegeben aus. Denken Sie daran, dass es kein CSS auf der Website gibt, wenn Sie bei Null anfangen, und Sie müssen es selbst tun.

Package Name: Neos.HowtoForgeNews
Site Name: HowtoForgeNews

Für unser Tutorial bleiben wir bei der Demo-Site. Um eine Demo-Site zu importieren, lassen Sie alle Felder leer.

Klicken Sie auf Weiter fortfahren. Sie erhalten den Abschlussbildschirm für die Einrichtung.

Klicken Sie auf Zum Backend gehen Schaltfläche, um den Anmeldebildschirm für das Control Panel zu öffnen. Geben Sie Ihren Benutzernamen und Ihr Passwort ein und klicken Sie auf Anmelden um das Administrationspanel zu öffnen.

Da wir die Demo-Site importiert haben, besteht der erste Schritt darin, Try me zu löschen Seite, die es jedem ermöglicht, Backend-Konten mit Rechten zum Bearbeiten der Website einzurichten.

Wechseln Sie zu Try me Seite aus der linken Seitenleiste und klicken Sie auf Löschen Schaltfläche, die im Screenshot unten hervorgehoben ist.

Klicken Sie auf den orangefarbenen Pfeil rechts neben Veröffentlicht – Live Schaltfläche, um das Dropdown-Menü zu öffnen, und klicken Sie auf Alle veröffentlichen um die Änderungen zu speichern.

Ihre Neos CMS-Installation ist einsatzbereit.

Schlussfolgerung

In diesem Tutorial haben Sie Neos CMS mit einem LEMP-Stack auf einem Rocky Linux 8-basierten Server installiert und konfiguriert. Wenn Sie Fragen haben, posten Sie diese in den Kommentaren unten.


Rocky Linux
  1. So installieren Sie Let’s Encrypt SSL für NGINX unter Rocky Linux 8

  2. So installieren Sie Nextcloud mit Nginx und Lets Encrypt SSL unter Ubuntu 20.04 LTS

  3. So installieren Sie Shopware mit NGINX und Lets Encrypt unter CentOS 7

  4. So installieren Sie Shopware mit NGINX und Lets Encrypt auf Fedora 30

  5. Wie installiere ich WordPress mit LEMP (Nginx, MariaDB und PHP) unter Rocky Linux 8?

So installieren Sie Drupal 9 mit Nginx und Lets Encrypt SSL unter Debian 10

So installieren Sie WordPress mit LAMP und kostenlosem Lets Encrypt SSL unter Rocky Linux

So installieren Sie Joomla mit Nginx unter Rocky Linux

So installieren Sie Moodle mit Nginx und Lets Encrypt SSL unter Ubuntu 20.04

So installieren Sie Shopware mit NGINX und Lets encrypt unter Debian 9

So installieren Sie MyBB Forum mit Nginx und Lets Encrypt unter Debian 10