Forzar URLs HTTPS en Laravel

  • Publicado el 02 enero, 2025
  • Palabras: 53

Aprende a garantizar la seguridad de las URL de tu aplicación al aplicar automáticamente HTTPS en función de tu entorno. Exploremos el nuevo método forceHttps de Laravel.

Forzar URLs HTTPS en Laravel

#Uso básico

A continuación se explica cómo aplicar HTTPS según el entorno:

 

use IlluminateSupportFacadesURL;

URL::forceHttps($this->app->isProduction());

 

#Configuración específica del entorno

URL::forceHttps(
    $this->app->environment('staging', 'production')
);

 

#Ejemplo práctico

A continuación, le mostramos cómo implementar la aplicación integral de HTTPS en su aplicación:

 

namespace AppProviders;

use IlluminateSupportFacadesURL;
use IlluminateSupportServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        // Basic production check
        URL::forceHttps($this->app->isProduction());

        // Or more specific environment control
        URL::forceHttps(
            $this->app->environment(['staging', 'production', 'demo'])
            && !$this->app->environment('testing')
        );

        // You might also want to combine it with other security headers
        if ($this->app->isProduction()) {
            $this->app['request']->server->set('HTTPS', true);
            
            // Add security headers
            $this->app['router']->middleware(function ($request, $next) {
                $response = $next($request);
                
                return $response->withHeaders([
                    'Strict-Transport-Security' => 'max-age=31536000; includeSubDomains',
                    'X-Frame-Options' => 'SAMEORIGIN',
                    'X-Content-Type-Options' => 'nosniff'
                ]);
            });
        }
    }
}

 

El método forceHttps proporciona una forma limpia y declarativa de garantizar que las URL de su aplicación sean seguras en entornos de producción.

Antonio Jenaro
Antonio Jenaro

Web Developer

Archivado en:

Fuente: Harris Raftopoulos

Inicia la conversación

Hazte miembro de Antonio Jenaro para comenzar a comentar.

Regístrate ahora

¿Ya estás registrado? Inicia sesión