shin1x1 / laravel-force-https-url-scheme by shin1x1

Force https url schema middleware for Laravel 5
26,569
25
4
Package Data
Maintainer Username: shin1x1
Maintainer Contact: shin1x1@gmail.com (Masashi Shinbara)
Package Create Date: 2015-04-15
Package Last Update: 2017-06-01
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-04-19 15:07:28
Package Statistics
Total Downloads: 26,569
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 25
Total Watchers: 4
Total Forks: 3
Total Open Issues: 2

laravel-force-https-url-scheme

Force https url schema middleware for Laravel 5

Build Status Latest Stable Version

Install

$ composer require shin1x1/laravel-force-https-url-scheme

Usage

This package provide to redirect http to https. It's implemented Illuminate\Contracts\Routing\Middleware interface that means you can use it as Laravel middleware. This feature is enabled in production environments only.

As global HTTP middleware

  • app/Http/Kernel.php
<?php namespace App\Http;

use Illuminate\Foundation\Http\Kernel as HttpKernel;

class Kernel extends HttpKernel
{

    /**
     * The application's global HTTP middleware stack.
     *
     * @var array
     */
    protected $middleware = [
        'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode',
        'Shin1x1\ForceHttpsUrlScheme\ForceHttpsUrlScheme', // <---added
        'Illuminate\Cookie\Middleware\EncryptCookies',
        'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse',
        'Illuminate\Session\Middleware\StartSession',
        'Illuminate\View\Middleware\ShareErrorsFromSession',
        'App\Http\Middleware\VerifyCsrfToken',
    ];}

As route middleware

  • app/Http/Kernel.php
<?php namespace App\Http;

use Illuminate\Foundation\Http\Kernel as HttpKernel;

class Kernel extends HttpKernel
{
(snip)
    /**
     * The application's route middleware.
     *
     * @var array
     */
    protected $routeMiddleware = [
        'auth' => 'App\Http\Middleware\Authenticate',
        'auth.basic' => 'Illuminate\Auth\Middleware\AuthenticateWithBasicAuth',
        'guest' => 'App\Http\Middleware\RedirectIfAuthenticated',
        'force_https_url_scheme' => 'Shin1x1\ForceHttpsUrlScheme\ForceHttpsUrlScheme', // <---added 
    ];
}
  • app/Http/routes.php
Route::group(['middleware' => 'force_https_url_scheme'], function () {
    get('/admin/', function () {
        // something here
    });
});