Laravel Framework auf Debian 11 installieren
Laravel ist ein freies und quelloffenes PHP-Webframework, das auf dem Symfony-Framework basiert. Es wird für die schnellere Entwicklung von Webanwendungen eingesetzt. Laravel macht es einfacher, einige gängige Aufgaben wie Authentifizierung, Routing, Sessions und Caching durchzuführen. Es hat mehrere nützliche Features, darunter Artisan, objekt-relationales Mapping, Template Engine, MVC Architektur, Unit-Testing und Datenbank-Migrationssystem.
In diesem Tutorial zeige ich dir, wie du Laravel auf Debian 11 installierst.
Voraussetzungen
- Ein Server, auf dem Debian 11 läuft.
- Ein gültiger Domainname, der auf die IP deines Servers zeigt.
- Ein Root-Passwort ist auf dem Server konfiguriert.
Apache Webserver installieren
Zuerst musst du das Apache Paket auf deinem Server installieren. Du kannst es mit dem folgenden Befehl installieren:
apt-get install apache2 -y
Sobald das Apache-Paket installiert ist, überprüfe die Apache-Version mit dem folgenden Befehl:
apache2ctl -v
Du solltest die folgende Ausgabe sehen:
Server version: Apache/2.4.48 (Debian) Server built: 2021-08-12T11:51:47
PHP und andere benötigte Erweiterungen installieren
Als nächstes musst du PHP und andere Erweiterungen installieren, die für die Laravel Anwendung benötigt werden. Als erstes installierst du die benötigten Abhängigkeiten mit dem folgenden Befehl:
apt-get install apt-transport-https gnupg2 ca-certificates -y
Als nächstes fügst du den GPG-Schlüssel und das PHP-Repository mit dem folgenden Befehl hinzu:
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
Als nächstes aktualisierst du das Repository und installierst PHP mit anderen Erweiterungen mit dem folgenden Befehl:
apt-get update -y apt-get install libapache2-mod-php php php-common php-xml php-gd php8.0-opcache php-mbstring php-tokenizer php-json php-bcmath php-zip unzip curl -y
Sobald PHP installiert ist, bearbeite die Datei php.ini und nimm einige Änderungen vor:
nano /etc/php/8.0/apache2/php.ini
Ändere die folgenden Zeilen:
cgi.fix_pathinfo=0 date.timezone = Asia/Kolkata
Speichere und schließe die Datei und überprüfe dann die PHP-Version mit folgendem Befehl:
php -v
Beispielhafte Ausgabe:
PHP 8.0.10 (cli) (built: Aug 26 2021 16:06:19) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.10, Copyright (c) Zend Technologies with Zend OPcache v8.0.10, Copyright (c), by Zend Technologies
Install Composer
Als nächstes musst du den Composer auf deinem System installieren. Du kannst ihn mit dem folgenden Befehl installieren:
curl -sS https://getcomposer.org/installer | php
Sample output:
All settings correct for using Composer Downloading... Composer (version 2.1.6) successfully installed to: /root/composer.phar Use it: php composer.phar
Als nächstes verschiebst du das Composer-Binary mit dem folgenden Befehl in den Systempfad:
mv composer.phar /usr/local/bin/composer
Als nächstes überprüfst du die Compsoer Version mit dem folgenden Befehl:
composer --version
Du solltest die folgende Ausgabe sehen:
Composer version 2.1.6 2021-08-19 17:11:08
Laravel installieren
Als nächstes wechsle das Verzeichnis in das Apache Webroot und lade die neueste Version von Laravel mit dem Composer herunter:
cd /var/www/html composer create-project --prefer-dist laravel/laravel laravel
Du solltest die folgende Ausgabe erhalten:
> @php artisan package:discover --ansi Discovered Package: facade/ignition Discovered Package: fruitcake/laravel-cors Discovered Package: laravel/sail Discovered Package: laravel/sanctum Discovered Package: laravel/tinker Discovered Package: nesbot/carbon Discovered Package: nunomaduro/collision Package manifest generated successfully. 76 packages you are using are looking for funding. Use the `composer fund` command to find out more! > @php artisan vendor:publish --tag=laravel-assets --ansi No publishable resources for tag [laravel-assets]. Publishing complete. > @php artisan key:generate --ansi Application key set successfully.
Setze als Nächstes die richtigen Berechtigungen und Eigentümer für das Laravel-Verzeichnis mit dem folgenden Befehl:
chown -R www-data:www-data /var/www/html/laravel chmod -R 775 /var/www/html/laravel
Sobald du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Apache für Laravel konfigurieren
Als nächstes musst du eine Apache Virtual Host Konfigurationsdatei für Laravel erstellen. Du kannst sie mit dem folgenden Befehl erstellen:
nano /etc/apache2/sites-available/laravel.conf
Füge die folgenden Zeilen ein:
<VirtualHost *:80> ServerName laravel.example.com ServerAdmin admin@example.com DocumentRoot /var/www/html/laravel/public <Directory /var/www/html/laravel> Options Indexes MultiViews AllowOverride None Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Speichere und schließe die Datei, dann aktiviere den Apache Virtual Host und das Rewrite Modul mit dem folgenden Befehl:
a2enmod rewrite a2ensite laravel.conf
Zum Schluss starte den Apache-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart apache2
Du kannst den Status des Apache auch mit dem folgenden Befehl überprüfen:
systemctl status apache2
Du solltest 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 Fri 2021-08-27 06:00:25 UTC; 7s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 14020 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 14025 (apache2) Tasks: 6 (limit: 2341) Memory: 13.2M CPU: 97ms CGroup: /system.slice/apache2.service ??14025 /usr/sbin/apache2 -k start ??14026 /usr/sbin/apache2 -k start ??14027 /usr/sbin/apache2 -k start ??14028 /usr/sbin/apache2 -k start ??14029 /usr/sbin/apache2 -k start ??14030 /usr/sbin/apache2 -k start Aug 27 06:00:25 debian11 systemd[1]: Starting The Apache HTTP Server...
Access Laravel
Öffne nun deinen Webbrowser und rufe die Laravel Web UI über die URL http://laravel.example.com auf. Du solltest die Laravel Standardseite auf dem folgenden Bildschirm sehen:
Fazit
Herzlichen Glückwunsch! Du hast Laravel erfolgreich mit Apache auf Debian 11 installiert. Du kannst nun mit der Entwicklung deiner Anwendung unter Verwendung des Laravel-Frameworks beginnen. Fühl dich frei, mich zu fragen, wenn du Fragen hast.