In diesem Beitrag erkläre ich, wie ein neues Laravel Projekt unter Windows 10/11 mit XAMPP installiert werden kann.
Gerade unter Entwickler ist Laravel ein sehr beliebtes Framework. Unter Windows verwende ich gerne die Software XAMPP, um schnell und einfach einen Webserver zu installieren.
Voraussetzungen
Xampp
Als Erstes benötigen wir XAMPP, dies kann auf der Herstellerseite einfach heruntergeladen und installiert werden. Folge dazu einfach dem Assistenten.
Composer
Um Laravel zu installieren, benötigen wir Composer. Lade dazu einfach das Installationspaket von Composer herunter und installiere dieses. Wähle beim PHP Pfad C:\xampp\php
aus!
Wichtige Pfade
C:\xampp\php
Das ist dein XAMPP-PHP Installationsverzeichnis, dort findest du alle PHP relevante dinge.
C:\xampp\mysql\bin
Hier findest du deine MySQL Installation
C:\xampp\apache\conf\extra
Apache Virtual Host Konfigurationen
Installation von Laravel mittels Composer
- Öffne ein Terminalfenster
Windows + R
–> TippeCMD
ein –> Enter. - Wechsle in das Webverzeichnis von XAMPP. Normalerweise:
cd c:\XAMPP\htdocs
- Die Installation von Laravel
composer create-project --prefer-dist laravel/laravel example
.example
ist dabei dein Projektname. Dies wird automatisch als Ordner unter htdocs angelegt.
Mit dieser Installation wird automatisch die letzte Laravelversion heruntergeladen und hier in den Ordner „example“ installiert.
Wenn du möchtest, kann mitcomposer create-project laravel/laravel my_laravel_dir 4.2
die Version angepasst werden. Hier Version 4.2
SQL Datenbank anlegen
Der Vollständigkeitshalber legen wir auch eine Datenbank an. Ob dies nun benötigt wird oder nicht, hängt immer vom Projekt ab.
- Öffne ein Terminalfenster
Windows + R
–> TippeCMD
ein –> Enter. - Wechsle in das MySQL Installation Verzeichnis
cd c:\XAMPP\mysql\bin
. - Logge dich bei MySQL ein
mysql -u root
. - Erstelle eine leere Datenbank. Der User wird automatisch „root“ sein.
CREATE DATABASE laravel DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
.
Laravel Konfigurationsdatei anpassen
Normalerweise findest du die Konfigurationsdatei mit der Endung .env im root Verzeichnis. Eine example Datei liegt auch dabei. Öffne die example.env, ändere die DB Sektionen ab und speichere diese als .env (ohne Dateiname). Laravel wird automatisch diese Datei verwenden.
Hier ein Auszug aus meiner .env Datei mit hinterlegten Datenbankverbindungen: (Ändere die dick hinterlegten Zeilen auf deine Bedürfnisse ab.)
APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:xxxxxxx
APP_DEBUG=true
APP_URL=http://localhost
LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
BROADCAST_DRIVER=log
CACHE_DRIVER=file
FILESYSTEM_DRIVER=local
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
MEMCACHED_HOST=127.0.0.1
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=smtp
MAIL_HOST=mailhog
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=null
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
In der ENV-Datei werden viele Konfigurationen gespeichert (SMTP, ENV, …). Eine Übersicht findest du hier.
Virtuellen Host erstellen (Dummy Domain Name)
Der Einstiegspunkt in Laravel ist /public. Dh. es muss ein Virtueller Host mit dem Documentroot der zu /public/ zeigt, erstellt werden.
- Öffne die Datei
C:\xampp\apache\conf\extra\httpd-vhosts.conf
mit einem Text-Editor deiner Wahl (zb. notepad++) - Füge deine „Virtuelle“ nicht existierende Domain hinzu:
NameVirtualHost *:80
<VirtualHost example.com:80>
DocumentRoot "C:\xampp\htdocs\example\public"
ServerName example.com
ServerAlias www.example.com
<Directory "c:/xampp/htdocs/example/public">
Require all granted
</Directory>
</VirtualHost>
Speichere die Datei.
Aktiviere mod_rewrite in PHP für XAMPP
- Öffne die Datei C:\xampp\apache\conf\extra\httpd.conf mit einem Text-Editor deiner Wahl (zb. Notepad++).
- Suche nach „
rewrite_module
“ oder „modules/mod_rewwirte
“ und lösche am Zeilenanfang den Strichpunkt;
falls dieser gesetzt ist. - Speichere die Datei.
Füge deine virtuelle Domain der Windows Hosts Datei hinzu.
Damit dein Browser auch von deiner neuen Domain weiß, wohin die Route gehen muss, müssen wird die Wusnchdomain auch in der Hosts Datei hinzufügen.
- Öffne Notepad++ als Administrator.
- Navigiere zu der Datei
c:\Windows\System32\Drivers\etc\hosts
. - Füge einen Eintrag hinzu
127.0.0.1 www.example.com example.com
.
Dabei ist www.example.com und example.com deine Wunschdomain, welche du auch im „Virtuellen Host“ Abscnitt unter Apache angelegt hast.
Schlussworte
Nachdem du alles installiert und konfiguriert hast, kannst du XAMPP öffnen und „Apache“ sowie „MySQL“ Starten.
Öffnest du nun deine Wunschdomain im Browser, dann sollte der Startscreen von Laravel erscheinen.
Es gibt vereinzelt Probleme, wenn mehrere Programme auch Port 80 verwenden (zuletzt mit Skype) dann kommt in der Anzeige von XAMPP einen Fehler. Google einfach danach, oft sind es Kleinigkeiten in den Konfigurationsdateien übersehen worden.