Wie man Drupal mit Apache unter Debian 9 installiert und konfiguriert

Drupal ist ein kostenloses und quelloffenes Content-Management-System, mit dem Online-Inhalte, Websites und Benutzergemeinschaften erstellt werden können. Es ist in PHP geschrieben, verwendet MySQL als Datenbank-Backend und vertreibt unter der GNU General Public License. Drupal wird mit über 17.000 Addons geliefert, um die Funktionalität anzupassen. Drupal läuft auf allen Webservern, einschließlich Apache, Nginx, IIS, Lighttpd und als Backend-Datenbanken MySQL, MariaDB, MongoDB, SQLite, MS SQL Server, PostgreSQL usw.

In diesem Artikel werden wir zeigen, wie man Drupal 8 auf dem Debian 9 Server installiert.

Anforderungen

  • Ein Server, auf dem Debian 9 auf Ihrem System läuft.
  • Apache 2.x, MySQL oder MariaDB mit PDO.
  • Ein Nicht-Root-Benutzer mit sudo-Rechten, der auf Ihrem Server eingerichtet ist.

1 Erste Schritte

Zuerst wird empfohlen, Ihr System auf die neueste stabile Version zu aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

sudo apt-get update -y
sudo apt-get upgrade -y

Sobald Ihr System aktualisiert ist, müssen Sie einige erforderliche Pakete auf Ihrem System installieren. Du kannst sie alle installieren, indem du den folgenden Befehl ausführst:

sudo apt-get install wget git unzip nano -y

2 LAMP-Server installieren

Bevor Sie mit der Installation von Drupal beginnen, müssen Sie den LAMP-Server (Apache, PHP und MySQL) auf Ihrem Server installiert und konfiguriert haben.

Beginnen Sie zunächst mit der Installation des Apache Webservers mit dem folgenden Befehl:

sudo apt-get install apache2 -y

Nachdem die Installation abgeschlossen ist, müssen Sie den Apache-Dienst starten und ihn so einstellen, dass er beim nächsten Systemstart automatisch startet. Führen Sie dazu den folgenden Befehl aus:

sudo systemctl start apache2
sudo systemctl enable apache2

Als nächstes installieren Sie PHP mit den erforderlichen Modulen, indem Sie den folgenden Befehl ausführen:

sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-cli php7.0-mcrypt php7.0-intl php7.0-mysql php7.0-curl php7.0-gd php7.0-soap php7.0-xml php7.0-zip -y

Als nächstes müssen Sie einige Änderungen in der Datei php.ini vornehmen:

sudo nano /etc/php/7.0/cli/php.ini

Ändern Sie die Linien wie unten gezeigt:

memory_limit = 512M
date.timezone = UTC
cgi.fix_pathinfo=0
upload_max_filesize = 100M
post_max_size = 100M

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

3 MariaDB installieren und konfigurieren

Drupal benötigt MariaDB/MySQL für Datenbank-Backends, daher müssen Sie es installieren. Sie können es installieren, indem Sie den folgenden Befehl ausführen:

sudo apt-get install mariadb-server -y

Nachdem die Installation abgeschlossen ist, starten Sie den MariaDB-Dienst und aktivieren Sie ihn, damit er beim Systemstart automatisch gestartet wird, indem Sie den folgenden Befehl ausführen:

sudo systemctl start mysql
sudo systemctl enable mysql

Als nächstes müssen Sie die Sicherheit für die Datenbank einrichten. Sie können den folgenden Befehl ausführen, um die MariaDB-Datenbank zu sichern:

sudo mysql_secure_installation

Dieses Skript setzt das Root-Passwort, deaktiviert die Remote-Root-Anmeldung, entfernt die Testdatenbank und entfernt anonyme Benutzer wie unten gezeigt:

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] n

 ... skipping.

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Nach der Sicherung der Datenbank benötigt Drupal eine leere MySQL-Datenbank. Sie müssen also eine MySQL-Datenbank und einen Benutzer für die Drupal-Installation erstellen.

Melden Sie sich zunächst mit dem folgenden Befehl in der MySQL-Shell an:

mysql -u root -p

Geben Sie das Root-Passwort ein, wenn Sie gefragt werden, und erstellen Sie dann eine Datenbank für Drupal mit dem folgenden Befehl:

MariaDB [(none)]>CREATE DATABASE drupaldb;

Als nächstes erstellen Sie einen Benutzer für die drupal-Datenbank und vergeben Berechtigungen für die drupal-Datenbank mit dem folgenden Befehl:

MariaDB [(none)]>GRANT ALL PRIVILEGES on drupaldb.* to 'drupal'@'localhost' identified by 'password';

Als nächstes führen Sie den Befehl FLUSH PRIVILEGES aus, um die Berechtigungen wieder zu laden:

MariaDB [(none)]>FLUSH PRIVILEGES;

Beenden Sie schließlich die MariaDB-Konsole mit dem folgenden Befehl:

MariaDB [(none)]>\q

4 Installation und Konfiguration von Drupal

Zuerst müssen Sie die neueste stabile Version des Drupal von der offiziellen Website herunterladen, ansonsten können Sie es direkt mit dem Befehl wget wie folgt herunterladen:

wget https://ftp.drupal.org/files/projects/drupal-8.3.4.zip

Danach extrahieren Sie die heruntergeladene Zip-Datei und verschieben das extrahierte Drupal-Verzeichnis in das Apache-Root-Verzeichnis:

unzip drupal-8.3.4.zip
sudo mv drupal-8.3.4 /var/www/html/drupal

Als nächstes müssen Sie einige Berechtigungen des drupal-Verzeichnisses ändern:

sudo chown -R www-data:www-data /var/www/html/drupal
sudo chmod -R 777 /var/www/html/drupal

Als nächstes müssen Sie eine virtuelle Apache-Hostdatei für drupal erstellen. Erstellen Sie dazu eine neue drupal.conf-Datei im Verzeichnis /etc/apache2/sites-available/:

sudo nano /etc/apache2/sites-available/drupal.conf

Füge die folgenden Zeilen hinzu:

<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/drupal
ServerName 192.168.15.189
ServerAlias www.example.com
<<Directory "/var/www/html/drupal/">
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/drupal-error_log
CustomLog /var/log/apache2/drupal-access_log common
</VirtualHost>

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und aktivieren Sie dann den virtuellen Host mit dem folgenden Befehl:

sudo a2ensite drupal

Außerdem müssen Sie das Umschreibmodul aktivieren.

sudo a2enmod rewrite

Starten Sie schließlich den Apache-Dienst neu, um diese Änderungen mit dem folgenden Befehl anzuwenden:

sudo systemctl restart apache2

5 Zugriff auf das Drupal Web Interface

Alles ist nun installiert und konfiguriert. Als nächstes müssen Sie Drupal durch die UFW-Firewall zulassen. Standardmäßig ist die UFW-Firewall in Debian 9 deaktiviert, so dass Sie sie zuerst aktivieren müssen.

sudo ufw enable

Lassen Sie dann Port 80 durch die UFW-Firewall laufen, indem Sie den folgenden Befehl ausführen:

sudo ufw allow 80

Öffnen Sie schließlich Ihren Webbrowser und navigieren Sie zur URL http://192.168.15.189, um das Drupal Web-Installationsprogramm zu starten. Du solltest die folgende Seite sehen:

Drupal Web-Installer

Wählen Sie die englische Sprache und klicken Sie auf die Schaltfläche Speichern und Fortfahren, Sie sollten das folgende Bild sehen:

Wählen Sie ein Installationsprofil aus

Wählen Sie ein Installationsprofil aus und klicken Sie auf die Schaltfläche Speichern und Fortfahren, überprüfen Sie dann alle Anforderungen und klicken Sie auf die Schaltfläche Speichern und Fortfahren. Du solltest das folgende Bild sehen:

Datenbank-Konfigurationsseite

Geben Sie auf der Seite Datenbankkonfiguration alle erforderlichen Datenbankdetails wie Datenbankname, Datenbankbenutzername und -passwort, Datenbankhost ein, klicken Sie dann auf die Schaltfläche Speichern und Fortfahren, Sie sollten das folgende Bild sehen:

Drupal Site Konfiguration Seite

Geben Sie auf der Seite Drupal Site Configuration Ihren Site-Namen, Admin-Benutzernamen und Ihr Passwort ein und klicken Sie dann auf die Schaltfläche Save and Continue, um die Installation von Drupal zu starten. Sobald Drupal installiert ist, sollten Sie das Drupal Dashboard im folgenden Bild sehen:

Sie haben Drupal erfolgreich installiert und konfiguriert.

Fazit

Herzlichen Glückwunsch! Sie haben Drupal erfolgreich auf dem Debian 9 Server installiert und konfiguriert. Ich hoffe, Sie können jetzt einfach Ihre eigene Website mit Drupal erstellen. Sie können die Drupal-Dokumentation Seite https://www.drupal.org/docs/8 für weitere Details besuchen.

Das könnte Dich auch interessieren …