ホームページ > バックエンド開発 > PHPチュートリアル > Laravel 5でHTTPSにリダイレクトするにはどうすればよいですか?

Laravel 5でHTTPSにリダイレクトするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-05 20:11:18
オリジナル
599 人が閲覧しました

How to Redirect to HTTPS in Laravel 5?

Laravel 5 - HTTPS へのリダイレクト

Laravel 5 では、HTTPS リダイレクトの実装にはミドルウェアまたはイベント リスナーの利用が含まれます。ミドルウェアは、よりクリーンで簡単なアプローチです。

ミドルウェアの使用

ミドルウェア クラスを作成します:

    namespace App\Http\Middleware;

    use Closure;
    use Illuminate\Support\Facades\Request;
    use Illuminate\Support\Facades\App;

    class HttpsProtocol
    {
        public function handle(Request $request, Closure $next)
        {
            if (!$request->secure() && App::environment() === 'production') {
                return redirect()->secure($request->getRequestUri());
            }

            return $next($request);
        }
    }
ログイン後にコピー

Kernel.php ファイルにミドルウェアを登録します:

    protected $middleware = [
        // Other middleware
        'App\Http\Middleware\HttpsProtocol',
    ];
ログイン後にコピー

Cloudflare の考慮事項

を使用する場合Cloudflare では、リダイレクト ループが発生する可能性があります。次の行をミドルウェアに追加します:

    $request->setTrustedProxies([$request->getClientIp()]);
ログイン後にコピー

これは CloudFlare が送信しているヘッダーを信頼し、リダイレクト ループを防ぎます。

環境ベースのリダイレクト

以前のバージョンではLaravel、env('APP_ENV') === 'production' が使用されました。 Laravel 5.7 以降では、これを App::environment() === 'production' に置き換えます。

結論

ミドルウェアまたはイベント リスナーを使用して HTTPS リダイレクトを実装すると、HTTPS 接続を強制できるようになります。 Laravel アプリケーション。必要に応じて Cloudflare 設定を考慮し、それに応じて環境依存のリダイレクトを調整することを忘れないでください。

以上がLaravel 5でHTTPSにリダイレクトするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート