Laravel PHP Framework mit Apache 2 auf Ubuntu 22.04 installieren
Laravel ist ein auf PHP basierendes Webanwendungs-Framework für die Erstellung von Unternehmens-Webanwendungen. Es ist ein freies und offenes Web-Framework, das der Model-View-Controller-Architektur (MVC) folgt und auf Symfony basiert. Es bietet eine elegante Syntax, die es dir ermöglicht, Anwendungen mit sauberem Code zu erstellen, der leicht zu lesen und zu verstehen ist.
Laravel ist ein unternehmenstaugliches Web-Framework für die Erstellung von unternehmenstauglichen und robusten Full-Stack-Webanwendungen. Laravel-Anwendungen können von der Entwicklung bis zur Produktion schnell und ohne Kopfschmerzen bereitgestellt werden.
Wenn du das Laravel-Webframework mit einem anderen Framework wie React oder Vue kombinierst, kannst du ein schönes und interaktives Frontend erstellen. Außerdem unterstützt Laravel mehrere Datenbanken, darunter MySQL, PostgreSQL, SQLite und SQL Server. Laravel bietet auch ein Gerüst für eine sichere Authentifizierung.
In diesem Tutorium lernst du, wie du Laravel auf dem neuesten Ubuntu 22.04 LTS installierst. Außerdem erfährst du, wie du den LAMP-Stack für die Laravel-Entwicklung einrichtest.
Voraussetzungen
- Ein Ubuntu 22.04 Rechner. In diesem Beispiel wird der Ubuntu-Server verwendet.
- Ein Nicht-Root-Benutzer mit sudo-Administratorrechten, oder du kannst auch den Root-Benutzer verwenden.
Installation des Apache Webservers
In diesem ersten Schritt installierst du den Apache2-Webserver auf deinem Ubuntu-System. In diesem Beispiel wirst du das Laravel-Webframework mit dem Apache-Webserver ausführen.
Führe nun den unten stehenden apt-Befehl aus, um dein Ubuntu-Repository zu aktualisieren und aufzufrischen.
sudo apt update
Als Nächstes installierst du das Apache2-Webserverpaket mit dem folgenden Befehl.
sudo apt install apache2
Gib zur Bestätigung Y ein und drücke ENTER, um die Installation zu starten. Die Installation des Apache-Webservers beginnt.
Nachdem die Apache2-Installation abgeschlossen ist, musst du die HTTP- und HTTPS-Dienste zur UFW-Firewall hinzufügen.
Führe den folgenden ufw-Befehl aus, um die HTTP- und HTTPS-Dienste zur UFW-Firewall hinzuzufügen.
sudo ufw allow "Apache Full"
Zuletzt öffnest du deinen Webbrowser und gibst die IP-Adresse des Servers in die Adressleiste ein (z.B. http://192.168.10.15). Jetzt solltest du die Standardseite index.html des Apache2-Webservers sehen.
Installation von PHP 8.1
Nach der Installation des Apache-Webservers installierst und konfigurierst du PHP auf dem Ubuntu 22.04 Rechner. Das Standard-Repository von Ubuntu 22.04 enthält das PHP-Paket v8.1, das für das Laravel-Webframework gut unterstützt wird.
Rufe den folgenden apt-Befehl auf, um die PHP-Pakete für das Laravel-Webframework zu installieren.
sudo apt install php php-curl php-bcmath php-json php-mbstring php-xml php-tokenizer php-zip
Gib Y ein, um die Installation zu bestätigen und drücke ENTER, um fortzufahren. Die PHP-Installation wird beginnen.
Nachdem die PHP-Installation abgeschlossen ist, bearbeite die Konfiguration php.ini mit dem Editor nano.
sudo nano /etc/php/8.1/apache2/php.ini
Dekommentiere die folgenden Optionen, um die PHP-Erweiterungen fileinfo, openssl und mbstring zu aktivieren.
extension=fileinfo extension=mbstring extension=openssl
Speichere und schließe die Datei, wenn du fertig bist.
Starte als Nächstes den Apache2-Dienst neu, um die neuen Änderungen in deiner PHP-Konfiguration zu übernehmen.
sudo systemctl restart apache2
Teste und überprüfe schließlich deine PHP-Konfiguration, indem du den folgenden Befehl ausführst.
Überprüfe, welche PHP-Version auf deinem Ubuntu-Rechner installiert ist.
php --version
Auf dem Screenshot unten siehst du, dass PHP 8.1.2 auf deinem Ubuntu-Rechner installiert ist.
Überprüfe alle aktivierten Erweiterungen in deiner PHP-Umgebung.
php -m
Installation von MariaDB Server
Du hast nun den Apache2-Webserver und die PHP-Pakete installiert. Jetzt installierst und konfigurierst du den MariaDB-Datenbankserver auf dem Ubuntu 22.04-Rechner. Außerdem wirst du eine neue MariaDB-Datenbank und einen neuen Benutzer für das Laravekl-Projekt anlegen.
Um die MariaDB-Datenbank auf dem Ubuntu-Rechner zu installieren, kannst du den folgenden apt-Befehl ausführen.
sudo apt install mariadb-server
Gib zur Bestätigung Y ein und drücke ENTER, um die Installation zu starten.
Nachdem die MariaDB-Installation abgeschlossen ist, melde dich mit dem unten stehenden Befehl als root-Benutzer in der MariaDB-Shell an.
sudo mysql -u root -p
Führe nun die folgenden MariaDB-Abfragen aus, um eine neue Datenbank und einen neuen Benutzer für das Laravel-Projekt zu erstellen. In diesem Beispiel wirst du die Datenbank laravelapp mit dem Benutzer laravel und dem Passwort„password“ anlegen.
CREATE DATABASE laravelapp; CREATE USER laravel@localhost IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON laravelapp.* TO laravel@localhost; FLUSH PRIVILEGES;
Führe nun die Abfrage„EXIT“ aus, um dich von der MariaDB-Shell abzumelden. Du hast nun den MariaDB-Datenbankserver installiert und eine neue Datenbank und einen neuen Benutzer für das laravel-Projekt erstellt.
Composer installieren
In diesem Abschnitt installierst du den Composer. Das ist ein Paketmanager für die Programmiersprache PHP, ähnlich wie pip für Python, gem für Ruby, npm oder yarn für Node.js.
Das Laravel Web-Framework kann auf viele Arten installiert werden. In diesem Beispiel wirst du das Laravel-Webframework mit Composer installieren.
Führe den unten stehenden Befehl aus, um den Installer für Composer herunterzuladen.
curl -sS https://getcomposer.org/installer -o composer-setup.php
Führe nun das Installer-Skript „composer-setup.php“ aus, um den Composer zu installieren. Dadurch wird der Composer in das Verzeichnis /usr/local/bin installiert.
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Unten siehst du den Screenshot der Installation des Composers.
Nachdem die Installation abgeschlossen ist, führst du den folgenden Befehl aus, um die Installation des Composers zu überprüfen und zu bestätigen.
Überprüfe die Version des Composers.
sudo -u www-data composer --version
Zeige die Hilfeinhalte des Composers an.
sudo -u www-data composer --help
Jetzt kannst du mit der Installation von Laravel beginnen.
Mit der Installation von Laravel beginnen
Bevor wir mit der Installation von Laravel beginnen, legen wir neue Verzeichnisse für das Laravel-Projekt an.
In diesem Beispiel legst du drei Verzeichnisse an: „.cache“ für den Cache der PHP-Pakete, das Verzeichnis „.config“ für die zusätzliche Konfiguration des Composers und das Verzeichnis „laravelapp“ für das Laravel-Projekt selbst. Alle diese Verzeichnisse werden unter dem Verzeichnis„/var/www
„ verfügbar sein.
Führe den folgenden Befehl aus, um neue Verzeichnisse für die Laravel-Installation zu erstellen.
mkdir -p /var/www/{.cache,.config,laravelapp}
Ändere nun die Eigentumsrechte an den Verzeichnissen Laravel und Composer auf den Benutzer und die Gruppe www-data.
sudo chown -R www-data:www-data /var/www/{.cache,.config,laravelapp}
Als Nächstes wechselst du mit dem folgenden Befehl in das Verzeichnis /var/www/laravelapp.
cd /var/www/laravelapp/
Installiere dann das Laravel-Webframework mit dem unten stehenden Composer-Befehl. Der Punkt am Ende des Befehls installiert Laravel in das aktuelle Arbeitsverzeichnis /var/www/laravelapp.
sudo -u www-data composer create-project laravel/laravel .
Unten siehst du einen Screenshot des Laravel-Installationsprozesses.
Und unten siehst du das Ergebnis, nachdem die Laravel-Installation abgeschlossen ist.
Nachdem die Installation abgeschlossen ist, bearbeitest du die Datei „.env“ mit dem Editor nano. Diese Konfiguration ist die wichtigste Umgebungskonfiguration für Laravel, die die URL der Installation, Datenbankdetails usw. enthält.
nano .env
Ändere die APP_URL-Konfiguration mit deiner Domain für die Laravel-Installation. In diesem Beispiel wird Laravel unter dem Domainnamen laravelapp.hwdomain.io laufen.
APP_URL=http://laravelapp.hwdomain.io
Ändere nun die Datenbankdetails mit deiner Datenbankkonfiguration.
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravelapp DB_USERNAME=laravel DB_PASSWORD=password
Speichere und schließe die Datei, wenn du fertig bist.
Damit hast du die Installation des Laravel Web Frameworks mit dem MariaDB Datenbankserver abgeschlossen.
Apache Virtual Host einrichten
Nun ist es an der Zeit, den virtuellen Apache2-Host für das Laravel-Webframework einzurichten. In diesem Beispiel wird das Laravel-Projekt auf der lokalen Domain laravelapp.hwdomain.io laufen.
Erstelle eine neue Datei„/etc/apache2/sites-available/laravel.conf“ mit dem Editor nano.
sudo nano /etc/apache2/sites-available/laravel.conf
Füge die folgende Konfiguration in die Datei ein. Wenn du deinen Domainnamen verwendest, kannst du die Domain ändern. Achte auch darauf, dass du den Pfad des Document Root des Laravel-Projekts änderst.
<VirtualHost *:80>
ServerAdmin admin@hwdomain.io
ServerName laravelapp.hwdomain.io
DocumentRoot /var/www/laravelapp/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/laravelapp>
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Speichere und schließe die Datei, wenn du fertig bist.
Als Nächstes aktivierst du das Apache2-Modul Rewrite und aktivierst die Konfiguration des virtuellen Hosts laravel.conf mit dem folgenden Befehl.
sudo a2enmod rewrite sudo a2ensite laravel.conf
Überprüfe nun die Apache2-Konfiguration und stelle sicher, dass kein Fehler vorliegt.
sudo apachectl configtest
Starte nun den Apache2-Dienst neu, um eine neue virtuelle Hostkonfiguration für das Laravel-Projekt mit dem folgenden Befehl anzuwenden.
sudo systemctl restart apache2
Jetzt hast du die Konfiguration des virtuellen Apache-Hosts für Laravel abgeschlossen.
Bearbeite auf deinem Rechner die Datei /etc/hosts mit dem Editor nano/vim.
sudo nano /etc/hosts
Füge die folgende Konfiguration hinzu. Achte darauf, dass du den Domainnamen und die IP-Adresse mit deinem detaillierten Server abgleichst.
192.168.10.15 laravelapp.hwdomain.io
Speichere und schließe die Datei, wenn du fertig bist.
Gehe schließlich zurück zu deinem Webbrowser und gib die URL der Laravel-Installation (z.B. http://laravelapp.hwdomain.io) in die Adresszeile ein. Nun solltest du die Standard-Indexseite des Laravel-Webframeworks sehen. Außerdem siehst du unten die Laravel-Version, die du gerade installiert hast, und die Version von PHP, die du gerade verwendest.
Fazit
Herzlichen Glückwunsch! Du hast jetzt erfolgreich das Laravel-Webframework auf Ubuntu 22.04 installiert. Außerdem hast du die Grundkonfiguration des LAMP-Stacks für das Laravel-Webframework gelernt.