Wie installiert man Bolt CMS mit Nginx unter Ubuntu 20.04

Bolt ist ein kostenloses, quelloffenes, leichtgewichtiges und einfaches Content-Management-System auf PHP-Basis. Es ist auf Benutzerfreundlichkeit ausgelegt und hilft Ihnen, leistungsstarke und dynamische Inhalts-Websites einfach zu erstellen. Es baut auf dem Silex-Mikroframework auf und ist eine großartige Alternative für alle, die ein modernes PHP-System suchen. Es wird mit modernen Open-Source-Bibliotheken erstellt und eignet sich am besten für die Erstellung von Websites in HTML5 mit modernem Markup.

In diesem Tutorial zeigen wir Ihnen, wie Sie Bolt CMS mit Nginx und Let’s Encrypt SSL auf Ubuntu 20.04 installieren.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft.
  • Ein gültiger Domain-Name, der auf Ihre Server-IP zeigt.
  • Der Server ist mit einem Root-Passwort konfiguriert.

Erste Schritte

Bevor Sie beginnen, ist es immer empfehlenswert, Ihr System mit der neuesten Version der Pakete zu aktualisieren. Sie können es mit dem folgenden Befehl aktualisieren:

apt-get update -y

Wenn alle Pakete aktualisiert sind, installieren Sie weitere Abhängigkeiten, indem Sie den folgenden Befehl ausführen:

apt-get install software-properties-common gnupg2 unzip git -y

Nachdem Sie alle Abhängigkeiten installiert haben, können Sie mit dem nächsten Schritt fortfahren.

LEMP-Server installieren

Installieren Sie zunächst den Nginx- und MariaDB-Server, indem Sie den folgenden Befehl ausführen:

apt-get install nginx mariadb-server -y

Als nächstes müssen Sie PHP Version 7.2 auf Ihrem Server installieren. Standardmäßig wird Ubuntu 20.04 mit PHP Version 7.4 ausgeliefert. Sie müssen also das PHP-Repository Ondrej in Ihrem System hinzufügen.

Sie können das PHP-Repository mit dem folgenden Befehl hinzufügen:

add-apt-repository ppa:ondrej/php

Sobald das Repository hinzugefügt ist, aktualisieren Sie das Repository und installieren das PHP und andere erforderliche Erweiterungen mit dem folgenden Befehl:

apt-get update -y
apt-get install php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-zip php7.2-pgsql php7.2-sqlite3 php7.2-curl php7.2-gd php7.2-mysql php7.2-intl php7.2-json php7.2-opcache php7.2-xml -y
Once all the packages are installed, you can proceed to the next step.

Datenbank für Bolt erstellen

Als nächstes müssen Sie eine Datenbank und einen Benutzer für Bolt erstellen. Loggen Sie sich zunächst mit folgendem Befehl in die MariaDB ein:

mysql

Sobald Sie sich angemeldet haben, erstellen Sie eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> CREATE DATABASE boltdb;
MariaDB [(none)]> CREATE USER 'bolt'@'localhost' IDENTIFIED BY 'password';

Als nächstes gewähren Sie alle Privilegien für die Bolt-Datenbank mit dem folgenden Befehl:

MariaDB [(none)]> GRANT ALL ON boltdb.* TO 'bolt'@'localhost';

Als nächstes löschen Sie die Privilegien und verlassen die MariaDB-Shell mit dem folgenden Befehl:

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

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

Bolt CMS herunterladen

Zuerst müssen Sie die neueste Version von Bolt CMS aus dem Git-Repository herunterladen. Sie können sie in das Nginx-Stammverzeichnis herunterladen, indem Sie den folgenden Befehl ausführen:

cd /var/www/html
git clone https://github.com/bolt/bolt.git

Sobald der Bolt heruntergeladen ist, ändern Sie das Verzeichnis auf bolt und kopieren Sie die Beispielkonfigurationsdatei:

cd bolt
cp app/config/config.yml.dist app/config/config.yml

Als nächstes bearbeiten Sie die Datei config.yml und definieren Ihre Datenbankeinstellungen:

nano app/config/config.yml

Entfernen Sie die Standard-Sqlite-Datenbankzeile und fügen Sie die folgenden Zeilen hinzu:

database:
     driver: mysql
     username: bolt
     password: password
     databasename: boltdb
     host: localhost
     prefix: prefix_

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

Als nächstes müssen Sie den Composer in Ihrem System installieren. Der Composer ist ein Abhängigkeitsmanager für PHP. Sie können ihn mit dem folgenden Befehl installieren:

wget -O composer-setup.php https://getcomposer.org/installer
php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Sobald der Composer installiert ist, sollten Sie die folgende Ausgabe erhalten:

All settings correct for using Composer
Downloading...

Composer (version 2.0.2) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

Als nächstes installieren Sie die erforderlichen PHP-Abhängigkeiten für Bolt CMS mit dem folgenden Befehl:

composer install

Sobald alle Abhängigkeiten installiert sind, ändern Sie die Eigentumsverhältnisse und Berechtigungen des fettgedruckten Verzeichnisses:

chown -R www-data:www-data /var/www/html/bolt
chmod -R 755 /var/www/html/bolt

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

Konfigurieren Sie Nginx für Bolt

Als Nächstes müssen Sie eine Nginx Virtual Host-Konfigurationsdatei für Bolt CMS erstellen. Sie können sie mit dem folgenden Befehl erstellen:

nano /etc/nginx/sites-available/bolt.conf

Fügen Sie die folgenden Zeilen hinzu:

server { 
   listen 80; 
   root /var/www/html/bolt; 
   index  index.php index.html index.htm; 
   server_name  bolt.example.com; 

   location / { 
   try_files           $uri $uri/ /index.php?$query_string; 
   } 

location ~ [^/]\.php(/|$) { 
   try_files            /index.php =404; 
   fastcgi_split_path_info  ^(.+\.php)(/.+)$; 
   fastcgi_index            index.php; 
   fastcgi_pass             unix:/var/run/php/php7.2-fpm.sock; 
   include                  fastcgi_params; 
   fastcgi_param   PATH_INFO       $fastcgi_path_info; 
   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
   } 

  location = /bolt { 
   try_files                $uri /index.php?$query_string; 

  } 
  location ^~ /bolt/ { 
   try_files                 $uri /index.php?$query_string; 
  } 

}

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und aktivieren Sie dann die Datei des virtuellen Nginx-Hosts mit dem folgenden Befehl:

ln -s /etc/nginx/sites-available/bolt.conf /etc/nginx/sites-enabled/bolt.conf

Überprüfen Sie dann die Nginx auf Konfigurationsfehler mit dem folgenden Befehl:

nginx -t

Sie sollten die folgende Ausgabe sehen:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Starten Sie schließlich den Nginx-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart nginx

Zu diesem Zeitpunkt ist Nginx für den Dienst Bolt CMS konfiguriert. Sie können nun mit dem nächsten Schritt fortfahren.

Zugriff auf Bolt CMS

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

Admin-Benutzer erstellen

Geben Sie Ihren gewünschten Benutzernamen, Ihr Passwort und Ihre E-Mail-Adresse ein und klicken Sie auf die Schaltfläche Ersten Benutzer erstellen. Auf der folgenden Seite sollten Sie das Bolt CMS Dashboard sehen:

Riegel CMS-Armaturenbrett

Klicken Sie nun auf die Schaltfläche Site anzeigen. Auf der folgenden Seite sollten Sie die Seite der einfachen Website von Bolt CMS sehen:

Bolt CMS-Beispielseite

Sicheres BoltCMS mit Let’s Encrypt SSL

Es ist immer eine gute Idee, Ihre Website mit Let’s Encrypt SSL zu sichern. Installieren Sie zunächst den Certbot-Client Let’s Encrypt mit folgendem Befehl auf Ihrem Server:

apt-get install python3-certbot-nginx -y

Nach der Installation sichern Sie Ihre Website mit Let’s Encrypt SSL, indem Sie den folgenden Befehl ausführen:

certbot --nginx -d bolt.example.com

Sie werden aufgefordert, eine gültige E-Mail-Adresse anzugeben und die unten dargestellte Servicebedingung zu akzeptieren:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for bolt.example.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/bolt.conf

Wählen Sie als nächstes, ob HTTP-Verkehr wie unten gezeigt zu HTTPS umgeleitet werden soll oder nicht:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Geben Sie 2 ein und drücken Sie Enter, um die Installation abzuschließen. Sie sollten die folgende Ausgabe sehen:

Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/bolt.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://bolt.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=bolt.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/bolt.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/bolt.example.com/privkey.pem
   Your cert will expire on 2020-10-30. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

 - We were unable to subscribe you the EFF mailing list because your
   e-mail address appears to be invalid. You can try again later by
   visiting https://act.eff.org.

Nun ist Ihre BoltCMS Webseite mit Let’s Encrypt SSL gesichert. Sie können über die URL https://bolt.example.comsicher darauf zugreifen.

Schlussfolgerung

Herzlichen Glückwunsch! Sie haben Bolt CMS mit Nginx und Let’s Encrypt SSL erfolgreich auf dem Ubuntu 20.04 Server installiert. Sie können nun ganz einfach Ihre eigene Website mit dem Bolt Dashboard erstellen. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.

Das könnte dich auch interessieren …