So installieren Sie Joomla mit Apache und Let’s Encrypt SSL auf Debian 10
Joomla ist ein kostenloses und quelloffenes Content-Management-System, das zum Erstellen, Ändern und Verwalten des Inhalts einer Website verwendet wird. Es ist einfach und leicht zu bedienen, sodass Sie keine HTML- oder CSS-Kenntnisse benötigen, um die Website zu erstellen. Es ist in PHP geschrieben und verwendet MySQL als Datenbank. Es bietet eine breite Palette von Funktionen, die es zu einem flexiblen Content-Management-System machen, das sofort einsatzbereit ist. Es wird mit Hunderten von kostenlosen Erweiterungen geliefert, mit denen Sie die Funktionalität anpassen und erweitern können.
In diesem Tutorial zeige ich Ihnen, wie Sie Joomla CMS mit Apache und Let’s Encrypt auf Debian 10 installieren können.
Voraussetzungen
- Ein Server, auf dem Debian 10 läuft.
- Ein gültiger Domain-Name, der auf die IP des Servers zeigt.
- Ein root-Passwort ist auf dem Server konfiguriert.
Erste Schritte
Aktualisieren Sie zunächst die Systempakete auf die aktuelle Version, indem Sie den folgenden Befehl ausführen:
apt-get update -y
Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.
LAMP-Server installieren
Als nächstes müssen Sie den Apache-Webserver, die MariaDB-Datenbank, PHP und andere PHP-Erweiterungen auf Ihrem System installieren. Sie können alle Pakete mit dem folgenden Befehl installieren:
apt-get install apache2 mariadb-server php openssl php-imagick php-common php-curl php-gd php-imap php-intl php-json php-ldap php-mbstring php-mysql php-pgsql php-smbclient php-ssh2 php-sqlite3 php-xml php-zip -y
Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.
Erstellen Sie eine Datenbank für Joomla
Joomla verwendet MySQL oder MariaDB, um seine Inhalte zu speichern. Sie müssen also eine Datenbank und einen Benutzer für Joomla erstellen.
Verbinden Sie sich zunächst mit folgendem Befehl mit der MariaDB:
mysql
Sobald Sie verbunden sind, erstellen Sie eine Datenbank und einen Benutzer mit dem folgenden Befehl:
MariaDB [(none)]> CREATE DATABASE joomladb; MariaDB [(none)]> GRANT ALL ON joomladb.* TO 'joomlauser'@'localhost' IDENTIFIED BY 'password';
Als nächstes löschen Sie die Berechtigungen und verlassen die MariaDB mit folgendem Befehl:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Wenn Sie damit fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Joomla installieren
Laden Sie als nächstes die neueste Version von Joomla mit dem folgenden Befehl herunter:
wget https://downloads.joomla.org/cms/joomla3/3-9-25/Joomla_3-9-25-Stable-Full_Package.tar.bz2
Sobald der Download abgeschlossen ist, erstellen Sie ein Verzeichnis für Joomla innerhalb des Apache-Web-Root:
mkdir /var/www/html/joomla
Führen Sie dann den folgenden Befehl aus, um die heruntergeladene Datei in das Joomla-Verzeichnis zu entpacken:
bunzip2 Joomla_3-9-25-Stable-Full_Package.tar.bz2 tar -xvf Joomla_3-9-25-Stable-Full_Package.tar -C /var/www/html/joomla/
Als nächstes setzen Sie mit folgendem Befehl die richtigen Rechte und Eigentümer für das Joomla-Verzeichnis:
chown -R www-data:www-data /var/www/html/joomla chmod -R 755 /var/www/html/joomla
Wenn Sie damit fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Apache-Webserver konfigurieren
Als nächstes müssen Sie eine Apache Virtual Host-Konfigurationsdatei erstellen, um Joomla zu hosten.
Sie können sie mit dem folgenden Befehl erstellen:
nano /etc/apache2/sites-available/joomla.conf
Fügen Sie die folgenden Zeilen ein:
<VirtualHost *:80> ServerName joomla.example.com ServerAdmin webmaster@example.com DocumentRoot /var/www/html/joomla <Directory /var/www/html/joomla> Allowoverride all </Directory> </VirtualHost>
Speichern und schließen Sie die Datei und aktivieren Sie dann den virtuellen Apache-Host mit dem folgenden Befehl:
a2ensite joomla
Starten Sie anschließend den Apache-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart apache2
Überprüfen Sie anschließend den Status des Apache mit folgendem Befehl:
systemctl status apache2
Sie sollten die folgende Ausgabe erhalten:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-03-22 09:26:20 UTC; 4s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 14495 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 14499 (apache2) Tasks: 6 (limit: 4701) Memory: 18.8M CGroup: /system.slice/apache2.service ??14499 /usr/sbin/apache2 -k start ??14500 /usr/sbin/apache2 -k start ??14501 /usr/sbin/apache2 -k start ??14502 /usr/sbin/apache2 -k start ??14503 /usr/sbin/apache2 -k start ??14504 /usr/sbin/apache2 -k start Mar 22 09:26:20 debian10 systemd[1]: Starting The Apache HTTP Server...
Zugriff auf Joomla
Öffnen Sie nun Ihren Webbrowser und rufen Sie die Joomla-Weboberfläche über die URL http://joomla.example.com auf. Sie werden auf die folgende Seite weitergeleitet:
Geben Sie nun Ihren Site-Namen, Ihre E-Mail-Adresse, Ihren Admin-Benutzernamen und Ihr Passwort ein, und klicken Sie auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:
Geben Sie den Namen Ihrer Datenbank, den Datenbank-Benutzernamen und das Passwort ein und klicken Sie auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:
Bestätigen Sie nun alle Einstellungen und klicken Sie auf die Schaltfläche Installieren, um die Installation zu starten. Wenn die Installation abgeschlossen ist, sollten Sie die folgende Seite sehen:
Klicken Sie auf den Installationsordner entfernen. Sie sollten die folgende Seite sehen:
Klicken Sie nun auf den Administrator-Button, Sie sollten die Joomla-Login-Seite sehen:
Geben Sie Ihre Admin-Anmeldedaten ein und klicken Sie auf die Schaltfläche Login, Sie sollten das Joomla Control Panel im folgenden Bild sehen:
Sichern Sie Joomla mit Let’s Encrypt SSL
Es ist immer eine gute Idee, Ihre Website mit Let’s Encrypt SSL zu sichern. Sie müssen den Certbot-Client installieren, um das SSL zu installieren und zu verwalten. Sie können ihn mit dem folgenden Befehl installieren:
apt-get install python3-certbot-apache -y
Sobald Certbot installiert ist, führen Sie den folgenden Befehl aus, um Ihre Website mit Let’s Encrypt SSL zu sichern:
certbot --apache -d joomla.example.com
Sie werden aufgefordert, Ihre E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren, wie unten gezeigt:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator standalone, Installer None Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): hitjethva1981@gmail.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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 Plugins selected: Authenticator apache, Installer apache Obtaining a new certificate Performing the following challenges: http-01 challenge for joomla.example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/joomla-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/joomla-le-ssl.conf Enabling available site: /etc/apache2/sites-available/joomla-le-ssl.conf
Wählen Sie als Nächstes aus, ob der HTTP-Datenverkehr auf HTTPS umgeleitet werden soll oder nicht (siehe unten):
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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 die Eingabetaste, um Let’s Encrypt SSL für Ihre Website zu installieren:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/joomla.conf to ssl vhost in /etc/apache2/sites-available/joomla-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://joomla.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=joomla.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/joomla.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/joomla.example.com/privkey.pem Your cert will expire on 2020-10-23. 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" - 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
Fazit
Herzlichen Glückwunsch! Sie haben Joomla CMS erfolgreich auf einem Debian 10-Server installiert. Sie können nun Ihre eigene Website einfach mit Joomla erstellen. Wenn Sie Fragen haben, können Sie sich gerne an mich wenden.