Zum Hauptinhalt springen

Warum von laravel/ui migrieren?

laravel/ui funktioniert auch mit Laravel 13. Das aktuelle Release von laravel/ui enthält bereits Laravel-13-Kompatibilität. Die aktuellen offiziellen Starterkits basieren jedoch auf Fortify. Wer laravel/ui weiter betreibt, entfernt sich schrittweise vom offiziellen Ist-Zustand.
Wenn Sie Ihr Bestand mit Bootstrap + Blade beibehalten, aber die Wartbarkeit für die Zukunft erhöhen möchten, ist es sinnvoll, das Auth-Backend zu Fortify zu ziehen.

Gesamtübersicht der Migration

Bei dieser Migration wird ausschließlich das Auth-Backend ausgetauscht. Ein UI-Redesign ist nicht nötig.
  • Fortify stellt Auth-Routen und -Verarbeitung bereit
  • Vorhandene Bootstrap + Blade-Templates bleiben in Nutzung
  • Formular-action und Feldnamen werden bei Bedarf punktuell angepasst
Fortify ist ein headless Auth-Backend. Da Fortify selbst kein UI mitbringt, können Sie Ihr vorhandenes Blade unverändert nutzen.

Fortify-Installation

1

Fortify-Paket hinzufügen

composer require laravel/fortify
2

Fortify-Ressourcen veröffentlichen

php artisan fortify:install
3

Migrationen ausführen

php artisan migrate
4

Von `laravel/ui` ergänzte Auth-Routen entfernen

Entfernen Sie in routes/web.php Auth::routes(); bzw. Auth::routes([...]). Da Fortify die Routen /login, /register, /forgot-password u. a. bereitstellt, müssen Duplikate vermieden werden.

FortifyServiceProvider konfigurieren

In dem durch php artisan fortify:install veröffentlichten app/Providers/FortifyServiceProvider.php verknüpfen Sie die Views.
Wenn Sie die vorhandenen resources/views/auth unverändert verwenden möchten, sind folgende Einstellungen der Kern der Migration.
use Laravel\Fortify\Fortify;

public function boot(): void
{
    Fortify::viewPrefix('auth.');
    Fortify::requestPasswordResetLinkView('auth.passwords.email');
    Fortify::resetPasswordView('auth.passwords.reset');
    Fortify::confirmPasswordView('auth.passwords.confirm');
    Fortify::verifyEmailView('auth.verify');
}

Minimale Anpassungen an Blade-Templates

Prüfen Sie nach der Migration die folgenden Punkte in den bestehenden Blades:
  • Zeigt der Formular-action auf einen Fortify-Endpoint (z. B. /login, /register, /forgot-password)? Da meist die Route-Namen wie route('login') oder route('register') verwendet werden, gibt es kaum Anpassungsbedarf. Lediglich route('verification.resend') heißt in Fortify route('verification.send') und muss angepasst werden.
In auth/passwords/reset.blade.php sind zwei Stellen anzupassen:
<input type="hidden" name="token" value="{{ $token }}">
<input type="hidden" name="token" value="{{ $request->route('token') }}">
{{ $email ?? old('email') }}
{{ old('email', $request->email) }}

Nicht benötigte Features deaktivieren

Funktionen, die es in laravel/ui nicht gab, sind zunächst nicht nutzbar; deaktivieren Sie sie in config/fortify.php. Wenn Sie neue View-Dateien anlegen, können Sie sie aktivieren.
    'features' => [
        Features::registration(),
        Features::resetPasswords(),
        // Features::emailVerification(),
        // Features::updateProfileInformation(),
        // Features::updatePasswords(),
        // Features::twoFactorAuthentication([
        //     'confirm' => true,
        //     'confirmPassword' => true,
            // 'window' => 0,
        // ]),
        // Features::passkeys([
        //     'confirmPassword' => true,
        // ]),
    ],

Checkliste zur Funktionsprüfung

Nach der Migration prüfen Sie mindestens Folgendes:
1

Login / Logout prüfen

Melden Sie sich mit einem bestehenden Nutzer an und stellen Sie sicher, dass die Session korrekt gehalten wird.
2

Registrierung prüfen

Legen Sie einen neuen Nutzer an und prüfen Sie, ob die Weiterleitung zur erwarteten Seite erfolgt.
3

Passwort-Reset prüfen

Prüfen Sie den vollständigen Ablauf – Reset-Mail, Link mit Token bis zum erfolgreichen Zurücksetzen.

Vorteile nach der Migration

Nach der Migration nähert sich Ihre Anwendung dem aktuellen Starterkit auf Basis von Fortify an.
Dadurch lassen sich 2FA und Passkeys künftig deutlich leichter aktivieren.

Laravel Fortify und die Starterkits

Möchten Sie tiefer in Fortifys internes Design sowie 2FA und Passkeys einsteigen, konsultieren Sie diese Seite.
Zuletzt geändert am 13. Juli 2026