So installieren Sie WordPress mit Caddy unter CentOS 7

Einführung

WordPress ist ein beliebtes Content Management System (CMS). Es kann verwendet werden, um Blogs und Websites schnell und einfach einzurichten, und fast die gesamte Verwaltung ist über ein Webinterface möglich.

In den meisten Fällen wird WordPress mithilfe eines LAMP- oder LEMP-Stacks installiert (d. H. Verwendung von Apache oder Nginx als Webserver). In diesem Handbuch richten wir WordPress stattdessen mit Caddy ein. Caddy ist ein neuer Webserver, der aufgrund seiner zahlreichen einzigartigen Funktionen, wie HTTP / 2-Unterstützung und automatischer TLS-Verschlüsselung mit Let’s Encrypt, einem beliebten kostenlosen Zertifikatanbieter, schnell an Beliebtheit gewinnt.

In diesem Tutorial installieren und konfigurieren Sie WordPress, das von Caddy unterstützt wird.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

Schritt 1 - PHP installieren

Um WordPress auszuführen, benötigen Sie einen Webserver, eine MySQL-Datenbank und die PHP-Skriptsprache. Sie haben bereits den Caddy-Webserver und eine MySQL-Datenbank unter den Voraussetzungen installiert. Daher müssen Sie zuletzt PHP installieren.

Stellen Sie zunächst sicher, dass Ihre Pakete auf dem neuesten Stand sind.

sudo yum update

Installieren Sie PHP und die PHP-Erweiterungen.

sudo yum install php php-fpm php-mysql php-curl php-gd php-mbstring php-mcrypt php-xml php-xmlrpc

Sobald die Installation abgeschlossen ist, können Sie überprüfen, ob PHP korrekt installiert wurde, indem Sie die PHP-Version überprüfen.

php -v

Es wird eine ähnliche Ausgabe angezeigt, in der die Versionsnummer von PHP angezeigt wird.

PHP version outputPHP 5.4.16 (cli) (built: Nov  6 2016 00:29:02)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

Bevor wir fortfahren können, müssen wir die Konfigurationsdatei für den PHP-Dienst geringfügig ändern, damit unser nicht privilegierter Benutzer "+ caddy +" den Server ausführt. Bei der Standardkonfiguration unter CentOS wird davon ausgegangen, dass Apache der Server der Wahl ist.

Öffnen Sie die PHP-FPM-Konfigurationsdatei mit + vi + oder Ihrem bevorzugten Texteditor. Hier ist eine short Introduction to + vi + wenn Sie nicht damit vertraut sind.

sudo vi /etc/php-fpm.d/www.conf

Suchen Sie das Fragment, das das Benutzerkonto und die Gruppe angibt.

/etc/php-fpm.d/www.conf

; 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 Choosed to be able to access some dir as httpd
user =
; RPM: Keep a group allowed to write in log dir.
group =

Ändern Sie beide Werte wie folgt in * caddy *:

/etc/php-fpm.d/www.conf

; 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 Choosed to be able to access some dir as httpd
user =
; RPM: Keep a group allowed to write in log dir.
group =

Speichern und schließen Sie die Datei, um sie zu beenden. Starten Sie den PHP-Dienst, damit Caddy mit PHP kommunizieren kann.

sudo systemctl start php-fpm

Alle WordPress-Abhängigkeiten sind installiert. Als Nächstes konfigurieren wir eine MySQL-Datenbank für WordPress.

Schritt 2 - Erstellen einer MySQL-Datenbank und eines dedizierten Benutzers

WordPress verwendet eine MySQL-Datenbank, um alle seine Informationen zu speichern. In einer Standard-MySQL-Installation wird nur ein * root * -Administratorkonto erstellt. Dieses Konto sollte nicht verwendet werden, da seine unbegrenzten Berechtigungen für den Datenbankserver ein Sicherheitsrisiko darstellen. Hier erstellen wir einen dedizierten MySQL-Benutzer für WordPress und eine Datenbank, auf die der neue Benutzer zugreifen darf.

Melden Sie sich zunächst beim MySQL-Administratorkonto * root * an.

mysql -u root -p

Sie werden aufgefordert, das Kennwort einzugeben, das Sie während der Installation für das MySQL-Konto * root * festgelegt haben.

Erstellen Sie eine neue Datenbank mit dem Namen "++", die für die WordPress-Website verwendet wird. Sie können einen anderen Namen verwenden, stellen Sie jedoch sicher, dass Sie sich diesen für eine spätere zusätzliche Konfiguration merken.

CREATE DATABASE  DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Als Nächstes erstellen Sie einen neuen Benutzer, der auf diese Datenbank zugreifen darf. Hier verwenden wir der Einfachheit halber den Benutzernamen "", aber Sie können Ihren eigenen Namen wählen. Denken Sie daran, "" durch ein sicheres Passwort zu ersetzen.

GRANT ALL ON .* TO ''@'localhost' IDENTIFIED BY '';

Flush-Berechtigungen, um den MySQL-Server über die Änderungen zu informieren.

FLUSH PRIVILEGES;

Sie können MySQL jetzt sicher beenden.

EXIT;

WordPress verfügt über eine dedizierte Datenbank und ein Benutzerkonto, sodass alle Systemkomponenten eingerichtet werden. Der nächste Schritt ist die Installation von WordPress.

Schritt 3 - WordPress herunterladen

Bei der Installation von WordPress wird die neueste Version in das Web-Stammverzeichnis heruntergeladen und sichergestellt, dass der Webserver darauf zugreifen kann. Anschließend wird die Installation über die grafische Benutzeroberfläche von WordPress abgeschlossen. In diesem Schritt wird nur die Version heruntergeladen, da der Webserver konfiguriert werden muss, bevor auf die GUI zugegriffen werden kann.

Ändern Sie zunächst das aktuelle Verzeichnis in "+ / var / www +", das Webstammverzeichnis, in dem Ihre Website-Dateien gespeichert sind.

cd /var/www

Laden Sie die neueste komprimierte WordPress-Version herunter. Es ist wichtig, die neueste Version zu verwenden, da die Software häufig mit Sicherheitspatches aktualisiert wird.

sudo curl -O https://wordpress.org/latest.tar.gz

Extrahieren Sie das soeben heruntergeladene komprimierte Archiv.

sudo tar zxf latest.tar.gz

Dadurch wird automatisch ein neues Verzeichnis mit dem Namen "+ wordpress +" erstellt. Sie können das heruntergeladene Archiv jetzt sicher entfernen, da es nicht mehr benötigt wird.

sudo rm latest.tar.gz

Der letzte Schritt besteht darin, die Berechtigungen von WordPress-Dateien und -Verzeichnissen so zu ändern, dass alle Dateien von Caddy beschrieben werden können. Dadurch kann WordPress automatisch auf neuere Versionen aktualisiert werden.

sudo chown -R caddy:caddy wordpress

Als Nächstes müssen Sie die Konfiguration des Webservers ändern, um Ihre Website zu bedienen.

Schritt 4 - Caddy für die Bereitstellung der WordPress-Website konfigurieren

Hier ändern wir die Konfigurationsdatei "+ Caddyfile +", um Caddy mitzuteilen, wo sich unsere WordPress-Installation befindet und unter welchem ​​Domainnamen sie für die Besucher veröffentlicht werden soll.

Öffnen Sie die Konfigurationsdatei mit + vi + oder Ihrem bevorzugten Texteditor

sudo vi /etc/caddy/Caddyfile

Kopieren Sie die folgende Konfiguration und fügen Sie sie in die Datei ein. Sie können jede Beispielkonfiguration aus vorherigen Lernprogrammen entfernen.

/ etc / caddy / Caddyfile

{
   tls
   root /var/www/wordpress
   gzip
   fastcgi / 127.0.0.1:9000 php
   rewrite {
       if {path} not_match ^\/wp-admin
       to {path} {path}/ /index.php?_url={uri}
   }
}

Dieses + Caddyfile + ist wie folgt aufgebaut:

  • Das "++" in der ersten Zeile ist der Domainname, unter dem die Site verfügbar sein wird. Ersetzen Sie ihn durch Ihren eigenen Domainnamen.

  • Das "+" nach der Direktive " tls +" teilt Caddy mit, welche E-Mail-Adresse verwendet werden soll, um das Let’s Encrypt-Zertifikat anzufordern. Wenn Sie das Zertifikat jemals wiederherstellen müssen, verwendet Let’s Encrypt diese E-Mail-Adresse für den Wiederherstellungsprozess.

  • Die Direktive + root + teilt Caddy mit, wo sich die Website-Dateien befinden. In diesem Beispiel ist es "+ / var / www / wordpress".

  • Die Direktive "+ gzip +" weist Caddy an, die Gzip-Komprimierung zu verwenden, um die Website schneller zu machen.

  • Die Direktive + fastcgi + konfiguriert den PHP-Handler so, dass er Dateien mit der Erweiterung + php + unterstützt

  • Die Verwendung der Direktive + rewrite + aktiviert hübsche URLs (in WordPress als hübsche Permalinks bezeichnet). Diese Konfiguration wird von WordPress automatisch in der + .htaccess + - Datei bereitgestellt, wenn Sie Apache verwenden, muss jedoch separat für Caddy konfiguriert werden.

Speichern Sie die Datei, und beenden Sie sie, nachdem Sie die Konfigurationsdatei entsprechend geändert haben.

Starten Sie Caddy neu, um die neuen Einstellungen der Konfigurationsdatei zu übernehmen.

sudo systemctl restart caddy

Wenn Caddy gestartet wird, erhält es automatisch ein SSL-Zertifikat von Let’s Encrypt, um Ihre Site mithilfe der TLS-Verschlüsselung sicher zu bedienen. Sie können jetzt auf Ihre von Caddy gehostete WordPress-Website zugreifen, indem Sie mit Ihrem Webbrowser zu Ihrer Domain navigieren. Wenn Sie dies tun, werden Sie das grüne Sperrzeichen in der Adressleiste bemerken, das bedeutet, dass die Site über eine sichere Verbindung angezeigt wird.

Sie haben Caddy und die gesamte erforderliche Software zum Hosten einer WordPress-Website installiert und konfiguriert. Der letzte Schritt ist das Beenden der WordPress-Konfiguration über die grafische Oberfläche.

Schritt 5 - Konfigurieren von WordPress

WordPress verfügt über einen GUI-Installationsassistenten, mit dem die Einrichtung abgeschlossen werden kann, einschließlich der Verbindung zur Datenbank und der Einrichtung Ihrer ersten Website.

Wenn Sie Ihre neue WordPress-Instanz zum ersten Mal in Ihrem Browser aufrufen, wird eine Liste der Sprachen angezeigt. Wählen Sie die Sprache aus, die Sie verwenden möchten. Auf dem nächsten Bildschirm werden die erforderlichen Informationen zu Ihrer Datenbank beschrieben. Klicken Sie auf "Los geht’s!". Auf der nächsten Seite werden Details zur Datenbankverbindung abgefragt. Füllen Sie dieses Formular wie folgt aus:

  • * Der Datenbankname * sollte "+ wordpress +" lauten, sofern Sie ihn nicht in Schritt 2 angepasst haben.

  • * Benutzername * sollte * wordpressuser * sein, es sei denn, Sie haben ihn in Schritt 2 angepasst.

  • * Passwort * sollte das Passwort sein, das Sie in Schritt 2 für * wordpressuser * festgelegt haben.

  • * Database Host * und * Table Prefix * sollten auf ihre Standardwerte belassen werden.

Wenn Sie auf "Senden" klicken, überprüft WordPress, ob die angegebenen Details korrekt sind. Wenn Sie eine Fehlermeldung erhalten, überprüfen Sie nochmals, ob Sie Ihre Datenbankdaten korrekt eingegeben haben.

Sobald WordPress erfolgreich eine Verbindung zu Ihrer Datenbank hergestellt hat, wird eine Meldung angezeigt, die mit * All right, sparky! Sie haben diesen Teil der Installation durchlaufen. WordPress kann jetzt mit Ihrer Datenbank kommunizieren. *

Jetzt können Sie auf * Führen Sie die Installation aus * klicken, um die Installation zu starten. Nach kurzer Zeit zeigt WordPress einen Abschlussbildschirm an, in dem Sie nach Ihren Website-Details gefragt werden, z. B. nach dem Titel der Website, dem Benutzernamen des Administratorkontos, dem Kennwort und der E-Mail-Adresse. Das sichere Passwort wird automatisch für Sie generiert. Sie können jedoch Ihr eigenes Passwort auswählen, wenn Sie möchten.

Nachdem Sie auf * WordPress installieren * geklickt haben, werden Sie zum WordPress-Dashboard weitergeleitet. Sie haben jetzt die WordPress-Installation abgeschlossen und können WordPress frei verwenden, um Ihre Website anzupassen und Beiträge und Seiten zu schreiben.

Fazit

Sie haben jetzt eine funktionierende WordPress-Installation, die über den Caddy-Webserver bereitgestellt wird. Caddy erhält automatisch SSL-Zertifikate von Let’s Encrypt, stellt Ihre Site über eine sichere Verbindung bereit und verwendet HTTP / 2- und Gzip-Komprimierung, um die Website schneller bereitzustellen. Weitere Informationen zu den einzigartigen Funktionen und Konfigurationsanweisungen von Caddy für das Caddyfile finden Sie in der offiziellen Caddy-Dokumentation unter https://caddyserver.com/docs/.

Wenn Sie Plugins mit Ihrer neuen WordPress-Instanz verwenden möchten, beachten Sie, dass einige Plugins auf den Dateien "+ .htaccess " des Apache-Webservers basieren. Andere Webserver als Apache sind mit WordPress weit verbreitet, so dass nicht viele dieser von ` .htaccess ` abhängigen Plugins existieren. Die wenigen, die es gibt, funktionieren mit Caddy jedoch nicht sofort, da kein ` .htaccess +` verwendet wird. Dies ist eine gute Sache, die Sie beachten sollten, wenn Sie bei der Verwendung von Caddy auf Probleme mit WordPress-Plugins stoßen.

Die meisten Plugins, die auf "+ .htaccess " basieren, sind Caching-Plugins (z. B. W3 Total Cache), die " .htaccess " verwenden, um PHP für die Verarbeitung vollständig zu umgehen. Ein weiteres Beispiel ist Wordfence, ein Firewall-Modul für Webanwendungen, das standardmäßig " .htaccess +" verwendet, jedoch verschiedene Konfigurationsmodelle ordnungsgemäß unterstützt.