Wie man Pagekit CMS mit Nginx auf Fedora 29 installiert

Pagekit ist ein modernes, intuitives, modulares und flexibles Open Source (MIT-Lizenz) CMS.erstellt mit Symfony-Komponenten und Vue.js. Es gibt Ihnen die Werkzeuge, um schöne Websites zu erstellen. Es hat ein reichhaltiges Design und ein Plugin-System.

In diesem Tutorial führen wir Sie durch den Pagekit CMS-Installationsprozess auf einem Fedora 29-Betriebssystem.mit NGINX als Webserver, MariaDB als Datenbankserver und optional können Sie die Transportschicht sichern, indem Sie den acme.sh-Client und die Let’s Encrypt-Zertifizierungsstelle verwenden, um SSL-Unterstützung hinzuzufügen.

Anforderungen

Um Pagekit zu installieren, stellen Sie sicher, dass Ihr Server die folgenden Anforderungen erfüllt:

  • Apache Version 2.2 oder höher oder NGINX Webserver.
  • MySQL Version 5.1 oder höher oder SQLite 3.
  • PHP Version 5.5.9 oder höher.
  • Erforderliche PHP-Erweiterungen: JSON, Session, ctype, Tokenizer, SimpleXML, DOM, mbstring, PCRE 8.0+, ZIP und PDO mit MySQL oder SQLite Treibern.
  • Optionale PHP-Erweiterungen: cURL, iconv und XML Parser sowie APC oder XCache für das Caching.

Voraussetzungen

  • Ein System, auf dem Fedora 29 läuft.
  • Ein Nicht-Root-Benutzer mit sudo-Rechten.

Erste Schritte

Überprüfen Sie Ihre Fedora-Systemversion:

cat /etc/fedora-release
# Fedora release 29 (Twenty Nine)

Richten Sie die Zeitzone ein:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Aktualisieren Sie Ihre Betriebssystempakete (Software). Dies ist ein wichtiger erster Schritt, denn es stellt sicher, dass Sie die neuesten Updates und Sicherheitsfixes für die Standardsoftwarepakete Ihres Betriebssystems erhalten:

sudo dnf upgrade -y

Installieren Sie einige wichtige Pakete, die für die grundlegende Verwaltung des Fedora-Betriebssystems erforderlich sind:

sudo dnf install -y curl wget vim git sudo unzip socat bash-completion

Schritt 1 – Installieren Sie PHP und die notwendigen PHP-Erweiterungen.

Die Pagekit CMS-Plattform erfordert PHP Version 7.0 oder höher. Fedora 29 enthält die PHP 7.2 Version in ihrem Standard-Repository.

Laden Sie PHP und die erforderlichen PHP-Erweiterungen herunter und installieren Sie sie:

sudo dnf install -y php-cli php-fpm php-common php-mbstring php-zip php-mysqlnd php-sqlite3 php-curl php-xml php-json

Um PHP, das in Modulen kompiliert ist, anzuzeigen, können Sie ausführen:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Überprüfen Sie die PHP-Version:

php --version

 

# PHP 7.2.14 (cli) (built: Jan  8 2019 09:59:17) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.14, Copyright (c) 1999-2018, by Zend Technologies

Starten und aktivieren Sie den PHP-FPM-Dienst:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Wir können zum nächsten Schritt übergehen, nämlich der Installation und Einrichtung der Datenbank.

Schritt 2 – MariaDB installieren und eine Datenbank für Pagekit erstellen

Pagekit CMS unterstützt MySQL, MariaDB und SQLite Datenbanken. Indieses Tutorial, werden wir MariaDB als Datenbankserver verwenden.

Installieren Sie den MariaDB-Datenbankserver:

sudo dnf install -y mariadb-server

Überprüfen Sie die MariaDB-Version:

mysql --version

Starten und aktivieren Sie den MariaDB-Dienst:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Führen Sie dasmysql_secure installationSkript aus, um die MariaDB-Sicherheit zu verbessern, und legen Sie das Passwort für den MariaDB-Benutzer fest:

sudo mysql_secure_installation

Beantworten Sie jede der Fragen:

Enter current password for root (enter for none): Press Enter
Set root password? [Y/n] Y
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

Melden Sie sich bei MariaDB als root-Benutzer an:

sudo mysql -u root -p
# Enter password

Erstellen Sie eine MariaDB-Datenbank und einen Benutzer, den Sie für Ihre Installation von Pagekit verwenden werden, und merken Sie sich die Anmeldeinformationen:

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

Verlassen Sie die MariaDB-Shell:

quit

Schritt 3 – Installieren Sie den Acme.sh-Client und erhalten Sie Let’s Encrypt Zertifikat (optional).

Die Sicherung Ihrer Website mit HTTPS ist nicht notwendig, aber es ist eine gute Vorgehensweise, um den Traffic Ihrer Website zu sichern. Um ein SSL-Zertifikat von Let’s Encrypt zu erhalten, werden wir den Acme.sh-Client verwenden. Acme.sh ist eine reine UNIX-Shell-Software zum Erhalten von SSL-Zertifikaten von Let’s Encrypt ohne Abhängigkeiten.

Laden Sie acme.sh herunter und installieren Sie es:

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
./acme.sh --install --accountemail your_email@example.com
source ~/.bashrc
cd ~

Überprüfen Sie die Version von acme.sh:

acme.sh --version
# v2.8.1

Besorgen Sie sich RSA- und ECC/ECDSA-Zertifikate für Ihre Domain/Hostname:

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Wenn Sie gefälschte Zertifikate zum Testen benötigen, können Sie diese hinzufügen.--stagingFlagge zu den obigen Befehlen.

Um Ihre ausgestellten Zertifikate aufzulisten, können Sie diese ausführen:

acme.sh --list

Erstellen Sie ein Verzeichnis, um Ihre Zertifikate zu speichern. Wir werden das/etc/letsencryptVerzeichnis verwenden.

mkdir -p /etc/letsencrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Zertifikate installieren/kopieren nach/etc/letsencryptVerzeichnis.

# RSA
acme.sh --install-cert -d example.com \ 
        --cert-file /etc/letsencrypt/example.com/cert.pem \
        --key-file /etc/letsencrypt/example.com/private.key \
        --fullchain-file /etc/letsencrypt/example.com/fullchain.pem \
        --reloadcmd "sudo systemctl reload nginx.service"

# ECC/ECDSA
acme.sh –install-cert -d example.com –ecc \
–cert-file /etc/letsencrypt/example.com_ecc/cert.pem \
–key-file /etc/letsencrypt/example.com_ecc/private.key \
–fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem \
–reloadcmd „sudo systemctl reload nginx.service“

Nachdem Sie die obigen Befehle ausgeführt haben, sind Ihre Zertifikate und Schlüssel in:

  • Für RSA: /etc/letsencrypt/example.comVerzeichnis.
  • Für ECC/ECDSA: /etc/letsencrypt/example.com_eccVerzeichnis.

Alle Zertifikate werden automatisch alle 60 Tage erneuert.

Nachdem Sie Zertifikate erhalten haben, verlassen Sie den Root-Benutzer und kehren Sie zum normalen sudo-Benutzer zurück:

exit

Schritt 4 – NGINX installieren und NGINX für Pagekit konfigurieren

NGINX Webserver installieren:

sudo dnf install -y nginx

Überprüfen Sie die NGINX-Version:

nginx -v
# nginx version: nginx/1.14.1

Starten und aktivieren Sie den Nginx-Dienst:

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

Konfigurieren Sie NGINX für Pagekit, indem Sie es ausführen:

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

Und füllen Sie die Datei mit der folgenden Konfiguration:

server {
    listen [::]:443 ssl http2;
    listen 443 ssl http2;
    listen [::]:80;
    listen 80;
    
    server_name example.com;
    
    index index.php index.html;
    root /var/www/pagekit;
    ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/example.com/private.key;
    ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

location ~ \.php$ {
include default.d/php.conf;
fastcgi_pass unix:/run/php-fpm/www.sock;
} }

Überprüfen Sie die NGINX-Konfiguration auf Syntaxfehler:

sudo nginx -t

Laden Sie den NGINX-Dienst neu:

sudo systemctl reload nginx.service

Schritt 5 – Pagekit CMS herunterladen und installieren

Erstellen Sie ein Dokumenten-Stammverzeichnis, in dem sich Pagekit befinden soll:

sudo mkdir -p /var/www/pagekit

Ändern Sie den Besitzer des/var/www/pagekitVerzeichnisses auf[your_user]:

sudo chown -R [your_user]:[your_user] /var/www/pagekit

Navigieren Sie zur Dokumentenwurzel:

cd /var/www/pagekit

Laden Sie die neueste stabile Version von Pagekit CMS herunter über :

wget https://github.com/pagekit/pagekit/releases/download/1.0.16/pagekit-1.0.16.zip

Entpacken Sie den Inhalt von Pagekit CMS und entfernen Sie die heruntergeladene Datei.

unzip pagekit-1.0.16.zip
rm pagekit-1.0.16.zip

Stellen Sie das entsprechende Eigentum zur Verfügung:

sudo chown -R nginx:nginx /var/www/pagekit

Führen Sie aus undsudo vim /etc/php-fpm.d/www.confsetzen Sie den Benutzer und die Gruppe auf . Zunächst werden sie auf die folgenden Werte gesetztapache:

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Starten Sie den PHP-FPM-Dienst neu:

sudo systemctl restart php-fpm.service

Schritt 6 – Fertigstellen des Pagekit-Setups

Öffnen Sie Ihre Website in einem Webbrowser und Sie sollten die folgende Seite sehen:

Pagekit Web-Installer

Klicken Sie auf das Pfeilsymbol nach rechts, um mit der Installation fortzufahren. Wählen Sie Ihre Sprache und klicken Sie auf die Schaltfläche „Weiter“:

Sprache auswählen

Als nächstes wählen Sie Ihre Datenbank entweder SQLite oder MySQL und füllen die erforderlichen Felder aus und klicken auf die Schaltfläche „Weiter“:

Verbindung zur Datenbank

Danach richten Sie Ihre Website ein, indem Sie den Seitentitel eingeben und ein Admin-Benutzerkonto erstellen:

Website einrichten

Und das sollte es sein. Sie werden zur Pagekit-Anmeldeseite weitergeleitet. Geben Sie Ihren Benutzernamen und Ihr Passwort ein, um sich in das Pagekit Dashboard einzuloggen.

Melden Sie sich im Pagekit-Administrationsbereich an.

Das ist alles. Wenn du feststeckst, schau dir die offiziellen Pagekit-Dokumente an.

Links

Das könnte Dich auch interessieren …