GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie WordPress mit Nginx und Lets Encrypt SSL unter CentOS 8

WordPress ist ein kostenloses, quelloffenes und am weitesten verbreitetes Content-Management-System der Welt. Es ist eine sehr leistungsfähige Blogging-Plattform, die zum Hosten von Blogs, Portfolio-Websites und E-Commerce-Plattformen verwendet werden kann. WordPress verwendet Apache/Nginx als Webserver, MariaDB/MySQL als Datenbank und PHP-Verarbeitung. WordPress bietet eine große Anzahl von Themen und Plugins, mit denen die Funktionalität angepasst werden kann.

In diesem Tutorial erklären wir, wie man WordPress mit Nginx auf einem CentOS 8-Server installiert und dann den Server mit einem kostenlosen SSL-Zertifikat von Let’s Encrypt sichert.

Voraussetzungen

  • Ein Server mit CentOS 8.
  • Auf Ihrem Server ist ein Root-Passwort konfiguriert.
  • Ein gültiger Domänenname verweist auf Ihre Server-IP-Adresse.

Erste Schritte

Standardmäßig ist SELinux auf dem CentOS 8-Server aktiviert. Sie müssen es also zuerst deaktivieren.

Sie können dies tun, indem Sie die Datei /etc/selinux/config bearbeiten:

nano /etc/selinux/config

Nehmen Sie die folgenden Änderungen vor:

SELINUX=deaktiviert

Speichern und schließen Sie die Datei. Starten Sie dann Ihren Server neu, um die Änderungen zu übernehmen.

LEMP-Server installieren

Bevor Sie beginnen, müssen Sie Nginx, MariaDB, PHP und andere erforderliche Pakete auf Ihrem Server installieren. Sie können alle installieren, indem Sie den folgenden Befehl ausführen:

yum install nginx php php-cli php-curl php-zip php-mbstring php-mysqlnd php-fpm curl unzip mariadb-server -y

Sobald alle Pakete installiert sind, starten Sie den Nginx-, PHP-FPM- und MariaDB-Dienst und ermöglichen Sie ihnen, nach dem Systemneustart zu starten:

systemctl start nginx
systemctl enable nginx
systemctl start mariadb
systemctl enable mariadb
systemctl start php-fpm
systemctl enable php-fpm

Sie können den Status des PHP-FPM-Dienstes auch mit dem folgenden Befehl überprüfen:

Systemctl-Status php-fpm

Sie sollten die folgende Ausgabe erhalten:

? php-fpm.service - Der PHP FastCGI Process Manager Geladen:geladen (/usr/lib/systemd/system/php-fpm.service; deaktiviert; Herstellervoreinstellung:deaktiviert) Aktiv:aktiv (läuft) seit Do 17.10.2019 05:39:11 EDT; Vor 4min 40s Haupt-PID:1475 (php-fpm) Status:"Prozesse aktiv:0, Leerlauf:5, Anfragen:0, langsam:0, Verkehr:0req/sec" Aufgaben:6 (Grenze:5060) Speicher:28,5M CGroup:/system.slice/php-fpm.service ??1475 php-fpm:Hauptprozess (/etc/php-fpm.conf) ??1478 php-fpm:pool www ??1479 php-fpm:pool www ? ?1480 php-fpm:pool www ??1481 php-fpm:pool www ??1482 php-fpm:pool www17. Oktober 05:39:10 centos8 systemd[1]:Starten des PHP FastCGI-Prozessmanagers ... 17. Oktober 05 :39:11 centos8 systemd[1]:PHP FastCGI Process Manager gestartet.

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

Wordpress-Datenbank konfigurieren

Standardmäßig ist der MariaDB-Server nicht gesichert. Sie müssen es also zuerst sichern. Sie können es mit dem folgenden Befehl sichern:

mysql_secure_installation

Beantworten Sie alle Fragen wie unten gezeigt:

Aktuelles Passwort für Root eingeben (Eingabe für keins):Root-Passwort setzen? [J/n] n Anonyme Benutzer entfernen? [J/n] YRoot-Anmeldung aus der Ferne verbieten? [J/n] YTestdatenbank und Zugriff darauf entfernen? [J/n] YBerechtigungstabellen jetzt neu laden? [J/n] Ja

Nach der Sicherung sollten Sie die folgende Ausgabe erhalten:

Aufräumen ... fertig! Wenn Sie alle oben genannten Schritte ausgeführt haben, sollte Ihre MariaDB-Installation jetzt sicher sein. Vielen Dank, dass Sie MariaDB verwenden!

Melden Sie sich als Nächstes mit dem folgenden Befehl bei der MariaDB-Shell an:

mysql -u root -p

Geben Sie Ihr Root-Passwort ein, wenn Sie dazu aufgefordert werden, und erstellen Sie dann mit den folgenden Befehlen eine Datenbank und einen Benutzer für WordPress:

MariaDB [(keine)]> CREATE DATABASE wpdb;
MariaDB [(keine)]> GEWÄHRT ALLE PRIVILEGIEN auf wpdb.* an 'wpuser'@'localhost' identifiziert durch 'password';

Leeren Sie als Nächstes die Berechtigungen und beenden Sie die MariaDB-Shell mit dem folgenden Befehl:

MariaDB [(keine)]> FLUSH PRIVILEGES;
MariaDB [(keine)]> EXIT;

Sobald Ihre Datenbank konfiguriert ist, können Sie mit dem nächsten Schritt fortfahren.

WordPress herunterladen

Sie können die neueste Version von WordPress mit dem folgenden Befehl herunterladen:

cd /var/www/html
wget https://wordpress.org/latest.tar.gz

Extrahieren Sie die heruntergeladene Datei nach dem Herunterladen mit dem folgenden Befehl:

tar -xvzf neueste.tar.gz

Ändern Sie als Nächstes den Eigentümer des WordPress-Verzeichnisses in nginx:

chown -R nginx:/var/www/html/wordpress/

Wechseln Sie als Nächstes in das Verzeichnis WordPress und benennen Sie die Standardkonfigurationsdatei von WordPress um:

cd /var/www/html/wordpress
cp wp-config-sample.php wp-config.php

Bearbeiten Sie als Nächstes die Datei wp-config.php in Ihrem bevorzugten Texteditor:

nano wp-config.php

Definieren Sie Ihre Datenbankinformationen wie unten gezeigt:

/** Der Name der Datenbank für WordPress */define( 'DB_NAME', 'wpdb' );/** Benutzername der MySQL-Datenbank */define( 'DB_USER', 'wpuser' );/** MySQL-Datenbank Passwort */define( 'DB_PASSWORD', 'password' );/** MySQL-Hostname */define( 'DB_HOST', 'localhost' );

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Nginx für WordPress konfigurieren

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

nano /etc/nginx/conf.d/wordpress.conf

Fügen Sie die folgenden Zeilen hinzu:

server {listen 80; server_name example.com; root /var/www/html/wordpress; indexindex.php; access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; location =/favicon.ico { log_not_found off; access_log off; } location =/robots.txt {alle zulassen; log_not_found aus; access_log off; } location / { try_files $uri $uri/ /index.php?$args; } Speicherort ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; schließen Sie fastcgi_params ein; } location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { läuft max ab; log_not_found aus; }}

Speichern und schließen Sie die Datei. Überprüfen Sie dann nginx mit dem folgenden Befehl 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 Konfigurationsänderungen zu übernehmen:

systemctl startet nginx neu

Zugriff auf das WordPress-Dashboard

WordPress ist installiert und konfiguriert, jetzt ist es an der Zeit, auf die Weboberfläche zuzugreifen.

Öffnen Sie Ihren Webbrowser und geben Sie die URL http://example.com ein . Sie werden auf die folgende Seite weitergeleitet:

Geben Sie alle erforderlichen Informationen wie Site-Name, Admin-Benutzername, Passwort, Admin-E-Mail an und klicken Sie auf WordPress installieren Taste. Sobald die Installation abgeschlossen ist. Sie sollten die folgende Seite sehen:

Klicken Sie auf Anmeldung Taste. Sie werden zur WordPress-Anmeldeseite weitergeleitet:

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Anmelden Taste. Sie sollten das WordPress-Dashboard auf der folgenden Seite sehen:

Sichern Sie WordPress mit Let's Encrypt

Um Ihre WordPress-Site mit dem kostenlosen SSL von Let’s Encrypt zu sichern, müssen Sie den Certbot Let’s Encrypt-Client in Ihrem System installieren. Standardmäßig ist Certbot nicht im Standard-Repository von CentOS 8 verfügbar. Sie müssen es also von der offiziellen Certbot-Website herunterladen.

Sie können Certbot mit den folgenden Befehlen herunterladen und installieren:

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot- auto
chmod 0755 /usr/local/bin/certbot-auto

Führen Sie nun den folgenden Befehl aus, um ein SSL-Zertifikat für Ihre WordPress-Website zu erhalten und zu installieren.

certbot-auto --apache -d example.com

Sie werden aufgefordert, eine E-Mail-Adresse anzugeben und den Nutzungsbedingungen zuzustimmen. Sie müssen auch auswählen, ob Sie den HTTP-Datenverkehr auf HTTPS umleiten möchten oder nicht. Bitte wählen Sie die entsprechende Option aus und drücken Sie die Eingabetaste. Sobald die Installation erfolgreich abgeschlossen ist, sollten Sie die folgende Ausgabe erhalten:

WICHTIGE HINWEISE:- Herzlichen Glückwunsch! Ihr Zertifikat und Ihre Kette wurden gespeichert unter:/etc/letsencrypt/live/example.com/fullchain.pem Ihre Schlüsseldatei wurde gespeichert unter:/etc/letsencrypt/live/example.com/privkey.pem Ihr Zertifikat läuft ab am 2019-08-14. Um in Zukunft eine neue oder optimierte Version dieses Zertifikats zu erhalten, führen Sie einfach certbot erneut mit der Option „certonly“ aus. Um *all* Ihre Zertifikate nicht interaktiv zu erneuern, führen Sie „certbot renew“ aus. Wenn Sie Certbot mögen, ziehen Sie bitte in Betracht, unsere Arbeit zu unterstützen, indem Sie:Spende an ISRG / Let’s Encrypt:https://letsencrypt.org/donate Spende an EFF:https://eff.org/donate-le

Richten Sie die automatische Verlängerung von Let's Encrypt ein

Das Let's Encrypt-Zertifikat ist 90 Tage gültig. Es wird daher empfohlen, das Zertifikat vor Ablauf zu erneuern. Sie können den Cron-Job so einrichten, dass das Zertifikat automatisch erneuert wird.

Erstellen Sie dazu die Crontab mit dem folgenden Befehl:

crontab -e

Fügen Sie die folgende Zeile hinzu:

0 0,12 * * * root python -c 'zufällig importieren; Importzeit; time.sleep(random.random() * 3600)' &&/usr/local/bin/certbot-auto renew

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Schlussfolgerung

Im obigen Tutorial haben wir gelernt, wie man WordPress mit Nginx auf einem CentOS-Server installiert und konfiguriert. Wir haben auch gelernt, wie man WordPress-Sites mit Let’s Encrypt Free SSL sichert. Ich hoffe, Sie können jetzt problemlos Ihre eigene WordPress-Website hosten.


Cent OS
  1. So installieren Sie ownCloud 9.1 mit Nginx und MariaDB auf CentOS 7

  2. So installieren Sie WordPress mit HHVM und Nginx unter CentOS 7

  3. So installieren Sie Laravel 5.x mit Nginx und PHP-FPM 7.1 unter CentOS 7

  4. Installieren Sie Magento auf CentOS 7 mit Nginx, PHP-FPM und MariaDB

  5. So installieren Sie Let’s Encrypt auf CentOS 8 mit Nginx

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

So installieren Sie das ElkArte-Forum mit Apache und Lets Encrypt SSL unter CentOS 8

So installieren Sie Shopware 6 mit NGINX und Lets Encrypt unter CentOS 8

So installieren Sie PrestaShop mit Apache und Lets Encrypt SSL unter CentOS 8

So installieren Sie OwnCloud 8 mit Nginx und PHP-FPM auf CentOS 6

So installieren Sie Let’s Encrypt SSL mit Nginx unter CentOS 7