Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Melaksanakan Pengalihan HTTPS dalam Laravel 5 Menggunakan Middleware?

Bagaimana untuk Melaksanakan Pengalihan HTTPS dalam Laravel 5 Menggunakan Middleware?

Patricia Arquette
Lepaskan: 2024-12-30 00:58:16
asal
1034 orang telah melayarinya

How to Implement HTTPS Redirection in Laravel 5 Using Middleware?

Laravel 5: Melaksanakan Pengalihan HTTPS dengan Middleware

Dalam Laravel 5, penguatkuasaan akses HTTPS untuk aplikasi anda boleh dicapai menggunakan Middleware. Berikut ialah panduan langkah demi langkah tentang cara untuk mencapainya:

1. Buat Kelas Middleware

Mulakan dengan mencipta kelas Middleware baharu:

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);
    }
}
Salin selepas log masuk

2. Gunakan Middleware pada Permintaan

Seterusnya, daftarkan middleware di app/Http/Kernel.php dengan menambahkannya pada tatasusunan $middleware:

protected $middleware = [
    'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode',
    'Illuminate\Session\Middleware\StartSession',
    'Illuminate\View\Middleware\ShareErrorsFromSession',
    
    // Add your middleware here
    'MyApp\Http\Middleware\HttpsProtocol'
];
Salin selepas log masuk

3. Konfigurasikan untuk Cloudflare

Jika anda menggunakan Cloudflare, tambahkan baris seguintes pada Middleware anda:

$request->setTrustedProxies([$request->getClientIp()]);
Salin selepas log masuk

4. Mengendalikan Pengecualian dalam Laravel v5.7

Dalam Laravel v5.7, mengubah hala permintaan bukan HTTPS menggunakan URL::forceScheme('https') tidak lagi mengubah hala permintaan. Untuk memastikan pengalihan yang betul, gunakan kaedah yang diterangkan di atas.

Kesimpulan

Dengan melaksanakan Middleware ini, anda boleh memaksa akses HTTPS untuk aplikasi Laravel 5 anda, walaupun dalam situasi di mana hanya domain khusus yang menggunakan SSL. Pendekatan ini fleksibel dan membolehkan penyesuaian berdasarkan keperluan dan persekitaran khusus anda.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pengalihan HTTPS dalam Laravel 5 Menggunakan Middleware?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan