Einführung

WordPress ist ein Open-Source-Content-Management-System (CMS). Als weltweit beliebtetes CMS ermöglicht WordPress die Einrichtung von Blogs und Websites auf einem MySQL-Datenbank-Backend, wobei PHP zur Ausführung von Skripten und zur Verarbeitung dynamischer Inhalte verwendet wird.

OpenLiteSpeed ist ein optimierter Open-Source-Webserver, den Sie zur Verwaltung und Bereitstellung von Websites verwenden können. OpenLiteSpeed verfügt über einige nützliche Funktionen, die ihn zu einer soliden Wahl für viele Installationen machen: Apache-kompatible Neuschreibregeln, eine integrierte webbasierte Verwaltungsoberfläche und eine für den Server optimierte PHP-Verarbeitung.

Dieser Leitfaden führt durch den Prozess der Installation und Einrichtung einer WordPress-Instanz unter Ubuntu 18.04 mit dem OpenLiteSpeed-Webserver. Da sowohl WordPress als auch OpenLiteSpeed über einen Webbrowser verwaltet werden können, ist diese Konfiguration ideal für diejenigen, die keinen regulären Zugriff zu einer SSH-Sitzung haben oder sich nicht wohlfühlen, einen Webserver über die Befehlszeile zu verwalten.

Voraussetzungen

Bevor Sie mit diesem Leitfaden beginnen, benötigen Sie Folgendes:

Schritt 1 – Erstellen einer Datenbank und eines Datenbankbenutzers für WordPress

WordPress verwendet MySQL, um Site- und Benutzerinformationen zu verwalten und zu speichern. Sie haben MySQL bereits installiert, aber als vorbereitenden Schritt müssen Sie eine Datenbank und einen Benutzer für WordPress einrichten.

Stellen Sie zu Beginn eine Verbindung mit Ihrem Server unter Verwendung von SSH her:

  • ssh sammy@your_server_IP

Melden Sie sich dann an dem MySQL Root-Konto an:

  • sudo mysql

Anmerkung: Wenn Sie Schritt 3 im vorbereitenden MySQL-Tutorial abgeschlossen und Ihren MySQL-Benutzer root konfiguriert haben, um sich mit dem Plugin mysql_native_password zu authentifizieren, müssen Sie sich mit dem folgenden Befehl anmelden:

  • mysql -u root -p

Geben Sie das Passwort Ihres Root-Benutzers ein, wenn Sie dazu aufgefordert werden.

Erstellen Sie von der MySQL-Eingabeaufforderung aus eine Datenbank mit dem folgenden Befehl. Hier nennen wir diese Datenbank der Einfachheit halber wordpress, aber Sie können ihr einen beliebigen Namen geben.

  • CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Erstellen Sie dann einen Benutzer und erteilen Sie ihm Berechtigungen über die von Ihnen gerade erstellte Datenbank. Auch hier können Sie diesem Benutzer einen beliebigen Namen geben, aber der Einfachheit halber nennen wir ihn wordpressuser. Denken Sie daran, password in ein starkes Passwort Ihrer Wahl zu ändern:

  • GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'password';

Führen Sie dann FLUSH PRIVILEGES aus, was den Server anweist, die Berechtigungstabellen neu zu laden und die Änderungen zu übernehmen:

  • FLUSH PRIVILEGES;

Danach können Sie die MySQL-Eingabeaufforderung schließen:

  • exit

Sie haben die Einrichtung Ihrer MySQL-Installation für die Arbeit mit WordPress abgeschlossen. Als Nächstes installieren wir einige PHP-Erweiterungen.

Schritt 2 – Installieren zusätzlicher PHP-Erweiterungen

In dem vorbereitenden Tutorial OpenLiteSpeed haben Sie das Paket lsphp73 installiert. Dies ist eine für OpenLiteSpeed optimierte Zusammenstellung von PHP, die die LiteSpeed-SAPI zur Kommunikation mit externen Anwendungen nutzt. Je nach Ihren Bedürfnissen kann WordPress andere bestimmte PHP-Erweiterungen benötigen, um wie gewünscht zu funktionieren.

Führen Sie den folgenden Befehl aus, um einige mit WordPress häufig verwendete PHP-Erweiterungen zu installieren:

  • sudo apt install lsphp73-common lsphp73-curl lsphp73-imagick lsphp73-imap lsphp73-json lsphp73-memcached lsphp73-mysql lsphp73-opcache lsphp73-redis

Anmerkung: Die in diesem Befehl enthaltenen Pakete können nicht jeden Anwendungsfall abdecken. Eine vollständige Liste der in dem LiteSpeed-Repository, das Sie in dem vorbereitenden Tutorial zu Ihrem Server hinzugefügt haben, verfügbaren PHP 7.3-Erweiterungen, finden Sie im LiteSpeed Wiki.

Danach können Sie mit dem Herunterladen und Einrichten von WordPress auf Ihrem Server fortfahren.

Schritt 3 – Herunterladen von WordPress

Nachdem Ihre Server-Software konfiguriert ist, können Sie WordPress installieren und einrichten. Insbesondere aus Sicherheitsgründen ist es immer empfehlenswert, die neueste Version von WordPress direkt von ihrer Website zu beziehen.

Wechseln Sie in ein beschreibbares Verzeichnis und laden dann die komprimierte Version herunter, indem Sie Folgendes eingeben:

  • cd /tmp
  • curl -O https://wordpress.org/latest.tar.gz

Extrahieren Sie die komprimierte Datei, um die WordPress-Verzeichnisstruktur zu erstellen:

  • tar xzvf latest.tar.gz

Wir werden diese Dateien vorübergehend in unser Stammverzeichnis verschieben, doch zuerst erstellen wir einige Dateien und Verzeichnisse, von denen die Installation von WordPress abhängig ist.

OpenLiteSpeed unterstützt die Dateien .htaccess. Dies ist für unsere Zwecke wichtig, da WordPress die Dateien .htaccess zur Erstellung und Verwaltung von Permalinks verwendet.

Fügen Sie eine Dummy-Datei .htaccess hinzu, damit sie später von WordPress verwendet werden kann:

  • touch /tmp/wordpress/.htaccess

Als Nächstes kopieren Sie die Beispielkonfigurationsdatei in den Dateinamen, den WordPress tatsächlich liest:

  • cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

Erstellen Sie zusätzlich das Verzeichnis upgrade, damit Wordpress keine Probleme mit Berechtigungen hat, wenn es versucht, dies nach einer Aktualisierung seiner Software selbstständig zu tun:

  • mkdir /tmp/wordpress/wp-content/upgrade

Kopieren Sie dann den gesamten Inhalt des Verzeichnisses in Ihr Dokumenten-Stammverzeichnis. OpenLiteSpeed verfügt standardmäßig über einen virtuellen Host namens Example in dem Verzeichnis /usr/local/lsws/. Das Dokumenten-Stammverzeichnis für den virtuellen Host Example ist das Unterverzeichnis html:

  • sudo cp -a /tmp/wordpress/. /usr/local/lsws/Example/html/wordpress

Beachten Sie, dass dieser Befehl am Ende des Quellverzeichnisses einen Punkt enthält, um anzugeben, dass alles im Verzeichnis kopiert werden soll, einschließlich versteckter Dateien (wie die von Ihnen erstellte Datei .htaccess):

Damit haben Sie WordPress erfolgreich auf Ihrem Webserver installiert und einige der ersten Konfigurationsschritte ausgeführt. Als Nächstes werden wir einige weitere Konfigurationsänderungen vornehmen, die WordPress die zur sicheren Funktion und zum Zugriff auf die zuvor erstellte MySQL-Datenbank und das Benutzerkonto erforderlichen Berechtigungen erteilen.

Schritt 4 – Konfigurieren des WordPress-Verzeichnisses

Bevor wir den webbasierten Einrichtungsvorgang für WordPress durchlaufen können, müssen wir einige Einträge in unserem WordPress-Verzeichnis anpassen.

Beginnen Sie damit, die Eigentümerschaft an allen Dateien im Verzeichnis an den Benutzer nobody und die Gruppe nogroup zu übergeben, die der OpenLiteSpeed-Webserver standardmäßig ausführt. Der folgende Befehl chown gewährt OpenLiteSpeed die Fähigkeit zum Lesen und Schreiben von Dateien im Verzeichnis wordpress, sodass es die Website bedienen und automatisch Aktualisierungen durchführen kann:

  • sudo chown -R nobody:nogroup /usr/local/lsws/Example/html/wordpress

Führen Sie als Nächstes zwei find-Befehle aus, um die richtigen Berechtigungen für die WordPress-Verzeichnisse und -Dateien festzulegen:

  • sudo find /usr/local/lsws/Example/html/wordpress/ -type d -exec chmod 750 {} \;
  • sudo find /usr/local/lsws/Example/html/wordpress/ -type f -exec chmod 640 {} \;

Diese sollten von Anfang an ein sinnvoller Berechtigungssatz sein, obwohl einige Plugins und Verfahren möglicherweise zusätzliche Anpassungen erfordern.

Anschließend müssen Sie einige Änderungen an der Hauptkonfigurationsdatei von WordPress vornehmen.

Wenn Sie die Datei öffnen, ist Ihr erstes Ziel die Anpassung einiger geheimer Schlüssel, um eine gewisse Sicherheit für Ihre Installation zu gewährleisten. WordPress stellt einen sicheren Generator für diese Werte bereit, damit Sie sie sich nicht ausdenken müssen. Sie werden nur intern verwendet, d. h. komplexe, sichere Werte haben keine negativen Auswirkungen auf die Benutzerfreundlichkeit.

Um sichere Werte vom WordPress Secret Key Generator zu erhalten, geben Sie Folgendes ein:

  • curl -s https://api.wordpress.org/secret-key/1.1/salt/

Sie werden eindeutige Werte erhalten, die ungefähr so aussehen:

Warnung! Es ist wichtig, dass Sie jedes Mal eindeutige Werte anfordern. Kopieren Sie NICHT die unten aufgeführten Werte!

Output
define('AUTH_KEY', '1jl/vqfs<XhdXoAPz9 DO NOT COPY THESE VALUES c_j{iwqD^<+c9.k<J@4H'); define('SECURE_AUTH_KEY', 'E2N-h2]Dcvp+aS/p7X DO NOT COPY THESE VALUES {Ka(f;rv?Pxf})CgLi-3'); define('LOGGED_IN_KEY', 'W(50,{W^,OPB%PB<JF DO NOT COPY THESE VALUES 2;y&,2m%3]R6DUth[;88'); define('NONCE_KEY', 'll,4UC)7ua+8<!4VM+ DO NOT COPY THESE VALUES #`DXF+[$atzM7 o^-C7g'); define('AUTH_SALT', 'koMrurzOA+|L_lG}kf DO NOT COPY THESE VALUES 07VC*Lj*lD&?3w!BT#-'); define('SECURE_AUTH_SALT', 'p32*p,]z%LZ+pAu:VY DO NOT COPY THESE VALUES C-?y+K0DK_+F|0h{!_xY'); define('LOGGED_IN_SALT', 'i^/G2W7!-1H2OQ+t$3 DO NOT COPY THESE VALUES t6**bRVFSD[Hi])-qS`|'); define('NONCE_SALT', 'Q6]U:K?j4L%Z]}h^q7 DO NOT COPY THESE VALUES 1% ^qUswWgn+6&xqHN&%');

Dies sind Konfigurationszeilen, die Sie direkt in Ihre Konfigurationsdatei einfügen, um sichere Schlüssel festzulegen. Kopieren Sie die erhaltene Ausgabe in die Zwischenablage und öffnen Sie dann die WordPress-Konfigurationsdatei, die sich im Stammverzeichnis Ihres Dokuments befindet:

  • sudo nano /usr/local/lsws/Example/html/wordpress/wp-config.php

Finden Sie den Abschnitt, der die Stellvertreterwerte für diese Einstellungen enthält. Dies sollte ungefähr so aussehen:

/var/www/wordpress/wp-config.php
. . .

define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');

. . .

Löschen Sie diese Zeilen und fügen Sie die Werte ein, die Sie aus der Befehlszeile kopiert haben:

/var/www/wordpress/wp-config.php
. . .

define('AUTH_KEY',         'VALUES COPIED FROM THE COMMAND LINE');
define('SECURE_AUTH_KEY',  'VALUES COPIED FROM THE COMMAND LINE');
define('LOGGED_IN_KEY',    'VALUES COPIED FROM THE COMMAND LINE');
define('NONCE_KEY',        'VALUES COPIED FROM THE COMMAND LINE');
define('AUTH_SALT',        'VALUES COPIED FROM THE COMMAND LINE');
define('SECURE_AUTH_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
define('LOGGED_IN_SALT',   'VALUES COPIED FROM THE COMMAND LINE');
define('NONCE_SALT',       'VALUES COPIED FROM THE COMMAND LINE');

. . .

Als Nächstes ändern Sie die Einstellungen für die Datenbankverbindung im oberen Abschnitt der Datei. Sie müssen den Datenbanknamen, den Datenbankbenutzer und das zugehörige Passwort, das Sie in MySQL konfiguriert haben, anpassen.

Die andere Änderung, die Sie vornehmen müssen, ist die Einstellung der Methode, die WordPress zum Schreiben in das Dateisystem verwenden soll. Da wir dem Webserver die Berechtigung erteilt haben, an den erforderlichen Stellen zu schreiben, können wir die Dateisystemmethode ausdrücklich auf direct setzen. Sollte dies nicht mit unseren aktuellen Einstellungen geschehen, würde WordPress bei bestimmten Aktionen nach FTP-Zugangsdaten fragen.

Diese Einstellung kann unterhalb der Datenbank-Verbindungseinstellungen oder anderswo in der Datei eingefügt werden:

/var/www/wordpress/wp-config.php
. . .

define('DB_NAME', 'wordpress');

/** MySQL database username */
define('DB_USER', 'wordpressuser');

/** MySQL database password */
define('DB_PASSWORD', 'password');

. . .

define('FS_METHOD', 'direct');

Wenn Sie fertig sind, speichern und schließen Sie die Datei.

Zu diesem Zeitpunkt ist WordPress auf Ihrem System noch nicht vollständig konfiguriert, da Sie noch einige letzte Handgriffe vornehmen müssen, bevor Sie mit der Veröffentlichung von Inhalten beginnen können. Dafür müssen Sie jedoch zunächst einige Konfigurationsänderungen an Ihrer OpenLiteSpeed-Installation vornehmen.

Schritt 6 – Konfigurieren von OpenLiteSpeed

Derzeit haben Sie WordPress auf Ihrem Ubuntu-Server installiert, aber Ihre OpenLiteSpeed-Installation wurde noch nicht für die Bedienung konfiguriert. In diesem Schritt greifen wir auf die Verwaltungsoberfläche von OpenLiteSpeed zu und nehmen einige Änderungen an der Konfiguration Ihres Servers vor.

Navigieren Sie in Ihrem bevorzugten Webbrowser zur Verwaltungsoberfläche von OpenLiteSpeed. Sie finden diese, indem Sie die öffentliche IP-Adresse Ihres Servers oder den damit verbundenen Domänennamen, gefolgt von :7080, in die Adressleiste Ihres Browsers eingeben:

https://server_domain_or_IP:7080

Dort wird Ihnen ein Anmeldebildschirm angezeigt. Geben Sie den Benutzernamen und das Passwort ein, das Sie in dem vorbereitenden Tutorial zur OpenLiteSpeed-Installation definiert haben:

OpenLiteSpeed Anmeldebildschirm

Suchen Sie in der OpenLiteSpeed-Konsole in der linken Seitenleiste nach Server Configuration und klicken Sie darauf. Navigieren Sie dann zu der Registerkarte External App, suchen Sie die Zeile der LiteSpeed SAPI App und klicken Sie auf die zugehörige Schaltfläche Bearbeiten:

Server-Konfigurationsseite

Erinnern Sie sich daran, dass Sie in dem vorbereitenden OpenLiteSpeed-Tutorial das Paket lsphp73 installiert haben, eine Kompilierung von PHP, die für die Arbeit mit OpenLiteSpeed über die LiteSpeed-SAPI optimiert ist. Die Standardeinstellungen auf der Seite External App verweisen jedoch auf lsphp und nicht lsphp73. Aus diesem Grund ist Ihre OpenLiteSpeed-Installation nicht in der Lage, PHP-Skripte korrekt auszuführen.

Um dies zu korrigieren, ändern Sie das Feld Name auf lsphp73, ändern Sie das Feld Address auf uds://tmp/lshttpd/lsphp73.sock und ändern Sie das Feld Command auf $SERVER_ROOT/lsphp73/bin/lsphp:

Änderungen an External App

Klicken Sie auf das Symbol Speichern in der oberen rechten Ecke des LiteSpeed SAPI App-Fensters, nachdem Sie diese Änderungen vorgenommen haben.

Klicken Sie anschließend im linken Menü auf Virtual Hosts. Suchen Sie auf der Seite Virtual Hosts den virtuellen Host, den Sie verwenden möchten, und klicken Sie auf das Symbol Anzeige. Hier verwenden wir den virtuellen Standardhost Example:

Seite Virtual Hosts

Navigieren Sie zu der Registerkarte General des virtuellen Hosts. Finden Sie dort den Abschnitt General und klicken Sie auf die zugehörige Schaltfläche Bearbeiten:

Virtual Hosts Registerkarte General

OpenLiteSpeed prüft den Inhalt des Feldes Document Root auf den zu bedienenden Inhalt. Da alle Ihre WordPress-Inhalte und -Dateien in dem zuvor erstellten Verzeichnis wordpress gespeichert sind, aktualisieren Sie das Feld Document Root, um auf dieses Verzeichnis zu verweisen. Dazu müssen Sie lediglich wordpress/ an das Ende des Standardwerts anhängen:

Virtual Hosts Änderungen an General

Klicken Sie zum Speichern dieser Änderung auf das Symbol Speichern.

Nun müssen Sie die Dateien index.php aktivieren, damit sie zur Bearbeitung von Anfragen verwendet werden können, die nicht von statischen Dateien bearbeitet werden. Dies ermöglicht die korrekte Funktionsweise der Hauptlogik von WordPress.

Blättern Sie, während Sie sich noch auf der Registerkarte General befinden, nach unten, um den Abschnitt Index Files zu finden, und klicken Sie auf das Symbol Bearbeiten:

Virtual Hosts Seite Index Files

Stellen Sie in dem Feld Index Files index.html index.php voran. Indem Sie index.php vor index.html setzen, erlauben Sie PHP-Indexdateien den Vorrang. Nach der Aktualisierung dieses Feldes sieht es wie folgt aus:

Virtual Hosts geänderte Index Files

Achten Sie darauf, vor dem Fortfahren auf das Symbol Speichern zu klicken.

Navigieren Sie anschließend zu der Registerkarte Rewrite des virtuellen Hosts. Finden Sie den Abschnitt Rewrite Control und drücken Sie die Schaltfläche Bearbeiten:

Virtual Hosts Seite Rewrite

Setzen Sie sowohl die Optionen Enable Rewrite als auch Auto Load from .htaccess auf Yes, indem Sie die jeweiligen Optionsfelder anklicken. Wenn Sie die Rewrite-Anweisungen auf diese Weise konfigurieren, können Sie innerhalb Ihrer WordPress-Installation Permalinks verwenden:

Virtual Hosts Änderungen an Rewrite

Klicken Sie nach der Änderung auf das Symbol Speichern.

Der in der OpenLiteSpeed-Installation enthaltene virtuelle Standardhost enthält einige passwortgeschützte Bereiche, um die Benutzerauthentifizierungsfunktionen von OpenLiteSpeed zu präsentieren. WordPress enthält seine eigenen Authentifizierungsmechanismen und wir werden die in OpenLiteSpeed enthaltene dateibasierte Authentifizierung nicht verwenden. Wir sollten diese entfernen, um die auf unserer WordPress-Installation aktiven verstreuten Konfigurationsfragmente zu minimieren.

Klicken Sie zuerst auf die Registerkarte Security und anschließend auf die Schaltfläche Löschen neben SampleProtectedArea in der Tabelle Realms List:

OpenLiteSpeed Security Realm List

Sie werden aufgefordert, die Löschung zu bestätigen. Klicken Sie zum Fortfahren auf Löschen.

Klicken Sie anschließend auf die Registerkarte Context. Löschen Sie in der Context List den Inhalt /protected/, der mit dem soeben gelöschten Sicherheitsbereich verbunden war:

OpenLiteSpeed – Löschen des geschützten Kontexts

Auch hier müssen Sie die Löschung durch Klicken auf Löschen bestätigen.

Mit derselben Technik können Sie auch alle oder einen Teil der anderen Kontexte sicher löschen, da wir sie nicht benötigen. Wir haben speziell den Kontext /protected/ gelöscht, weil sonst ein Fehler durch die Löschung des zugehörigen Sicherheitsbereichs (den wir gerade auf der Registerkarte Security entfernt haben) entstehen würde.

Klicken Sie anschließend auf das grüne Symbol Graceful Restart in der oberen rechten Ecke der OpenLiteSpeed-Konsole. Dadurch wird der OpenLiteSpeed-Server neu gestartet, sodass die von Ihnen vorgenommenen Änderungen angewendet werden:

Position des Symbols Graceful Restart

Damit ist Ihr OpenLiteSpeed-Server vollständig konfiguriert. Sie sind jetzt zum Abschluss der Einrichtung von WordPress in Ihrem Browser bereit.

Schritt 7 – Abschließen der Installation über die WordPress-Oberfläche

Jetzt ist die Serverkonfiguration abgeschlossen, und wir können die Installation über die Web-Oberfläche abschließen.

Navigieren Sie im Web-Browser zum Domänenamen oder zur öffentlichen IP-Adresse Ihres Servers:

http://server_domain_or_IP

Wählen Sie die Sprache aus, die Sie verwenden möchten:

WordPress-Sprachauswahl

Als Nächstes kommen Sie zur Setup-Hauptseite. Wählen Sie einen Namen für Ihre WordPress-Website und einen Benutzernamen aus (aus Sicherheitsgründen sollten Sie kein Wort mit „admin“ wählen). Ein starkes Passwort wird automatisch erstellt. Speichern Sie dieses oder wählen Sie anderes starkes Passwort aus.

Geben Sie Ihre E-Mail-Adresse ein und wählen Sie, ob Sie Suchmaschinen aus der Indexierung Ihrer Site ausschließen wollen:

WordPress-Setup-Installation

Wenn Sie bereit sind, klicken Sie auf die Schaltfläche Install WordPress. Sie werden zu einer Seite weitergeleitet, die Sie zur Anmeldung auffordert:

WordPress-Anmeldung

Nach der Anmeldung gelangen Sie zum WordPress-Administrations-Dashboard:

WordPress-Anmeldung

Vom Dashboard aus können Sie Änderungen am Thema Ihrer Website vornehmen und Inhalte veröffentlichen.

Zusammenfassung

Durch die Ausführung dieses Leitfadens haben Sie eine WordPress-Instanz auf einem Ubuntu 18.04-Server, auf dem OpenLiteSpeed ausgeführt wird, installiert und konfiguriert. Einige häufige nächste Schritte sind die Auswahl der Permalink-Einstellungen für Ihre Posts (diese sind unter Einstellungen > Permalinks zu finden) oder die Auswahl eines neuen Designs (in Darstellung > Design). Wenn Sie WordPress das erste Mal verwenden, schauen Sie sich die Oberfläche an, um Ihre neue CMS kennenzulernen.

Um die Sicherheit Ihrer neuen WordPress-Website zu erhöhen, empfehlen wir Ihnen, sie für die Funktion mit SSL zu konfigurieren, damit sie Inhalte über HTTPS bereitstellen kann. Schauen Sie sich dieses Tutorial aus der OpenLiteSpeed-Dokumentation an, um LetsEncrypt zu installieren und einzurichten.

0 Comments

Creative Commons License