Laravel 5: HTTPS-Umleitung mit Middleware implementieren
In Laravel 5 kann die Durchsetzung des HTTPS-Zugriffs für Ihre Anwendung mithilfe von Middleware erreicht werden. Hier ist eine Schritt-für-Schritt-Anleitung, wie Sie dies erreichen:
1. Erstellen Sie eine Middleware-Klasse
Beginnen Sie mit der Erstellung einer neuen Middleware-Klasse:
namespace MyApp\Http\Middleware; use Closure; use Illuminate\Support\Facades\App; class HttpsProtocol { public function handle($request, Closure $next) { if (!$request->secure() && App::environment() === 'production') { return redirect()->secure($request->getRequestUri()); } return $next($request); } }
2. Wenden Sie Middleware auf Anfragen an
Registrieren Sie als Nächstes die Middleware unter app/Http/Kernel.php, indem Sie sie dem $middleware-Array hinzufügen:
protected $middleware = [ 'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode', 'Illuminate\Session\Middleware\StartSession', 'Illuminate\View\Middleware\ShareErrorsFromSession', // Add your middleware here 'MyApp\Http\Middleware\HttpsProtocol' ];
3. Für Cloudflare konfigurieren
Wenn Sie Cloudflare verwenden, fügen Sie die folgende Zeile zu Ihrer Middleware hinzu:
$request->setTrustedProxies([$request->getClientIp()]);
4. Behandeln von Ausnahmen in Laravel v5.7
In Laravel v5.7 wird die Anfrage durch die Umleitung von Nicht-HTTPS-Anfragen mit URL::forceScheme('https') nicht mehr umgeleitet. Um eine ordnungsgemäße Umleitung sicherzustellen, verwenden Sie die oben beschriebene Methode.
Fazit
Durch die Implementierung dieser Middleware können Sie den HTTPS-Zugriff für Ihre Laravel 5-Anwendung erzwingen, selbst in Situationen, in denen Nur bestimmte Domänen verwenden SSL. Dieser Ansatz ist flexibel und ermöglicht eine Anpassung basierend auf Ihren spezifischen Anforderungen und Ihrer Umgebung.
Das obige ist der detaillierte Inhalt vonWie implementiert man die HTTPS-Umleitung in Laravel 5 mithilfe von Middleware?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!