Download the PHP package csun-metalab/lumen-force-https without Composer
On this page you can find all versions of the php package csun-metalab/lumen-force-https. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download csun-metalab/lumen-force-https
More information about csun-metalab/lumen-force-https
Files in csun-metalab/lumen-force-https
Package lumen-force-https
Short Description A small Composer package for Lumen that forces HTTPS in the URL via middleware
License MIT
Informations about the package lumen-force-https
Lumen Force HTTPS Package
A small Composer package for Lumen 5.1 and above to force HTTPS in the URL via middleware.
Table of Contents
- Installation
- Composer, Environment, and Service Provider
- Composer
- Environment
- Service Provider
- Configuration File
- Middleware Installation
- Composer, Environment, and Service Provider
- Required Environment Variables
- Middleware
- Force HTTPS Middleware
- Resources
Installation
Composer, Environment, and Service Provider
Composer
To install from Composer, use the following command:
Environment
Now, add the following line(s) to your .env
file:
This will enable the forcing functionality.
Service Provider
Next, register the service provider and the configuration file in bootstrap/app.php
as follows:
Configuration File
If you do not already have a config
directory in your project root, go ahead and create it.
In order to leverage the custom configuration values from this package, copy and paste the following code into a file called forcehttps.php
within your config
directory in Lumen:
Middleware Installation
Finally, add a call to $app->middleware()
in bootstrap/app.php
or modify an existing one to apply it to all requests the application receives:
Required Environment Variables
You added an environment variable to your .env
file that controls the protocol the application traffic uses.
FORCE_HTTPS
Whether to force HTTPS on all URLs or not. Default is false
to prevent any unexpected issues from forcing HTTPS directly upon installation.
Middleware
Force HTTPS Middleware
This class is namespaced as CSUNMetaLab\LumenForceHttps\Http\Middleware\ForceHttps
.
The middleware performs the following steps:
- Checks to see if the application configuration requests traffic to be forced over HTTPS
- If so, it performs the following steps:
- Resolves the request URI as an absolute URL so it can also see the protocol
- Checks to see if the
HTTPS
server variable is a non-empty value or set asoff
- If the protocol isn't already
https:
then it replaces it withhttps:
and returns a redirect
- If not, it passes the request instance to the next configured middleware in the pipeline