Maison > développement back-end > tutoriel php > Comment appliquer SSL/HTTPS à l'aide de .htaccess et mod_rewrite ?

Comment appliquer SSL/HTTPS à l'aide de .htaccess et mod_rewrite ?

DDD
Libérer: 2024-12-30 12:24:17
original
215 Les gens l'ont consulté

How to Enforce SSL/HTTPS Using .htaccess and mod_rewrite?

Application de SSL/HTTPS avec .htaccess et mod_rewrite

Pour appliquer SSL/HTTPS avec .htaccess et mod_rewrite, plusieurs approches sont disponibles.

Utilisation mod_ssl

mod_ssl d'Apache fournit la directive SSLRequireSSL, qui restreint l'accès à moins que HTTPS ne soit activé. En ajoutant cette directive à l'hôte virtuel ou aux répertoires compatibles SSL, vous pouvez empêcher l'exposition des données sensibles. Cependant, cette méthode ne redirige pas vers HTTPS.

Utilisation de mod_rewrite

Pour rediriger vers HTTPS, utilisez mod_rewrite dans votre fichier .htaccess :

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Copier après la connexion

Approches alternatives

Options supplémentaires pour l'application de HTTPS inclut :

  • Les méthodes décrites dans « HTTP-HTTPS (redirection SSL) avec RewriteRule » : http://www.askapache.com/htaccess/http-https-rewriterule-redirect.html

Solution basée sur PHP

Dans cas où .htaccess est désactivé, PHP peut être utilisé :

if (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] !== 'on') {
    if(!headers_sent()) {
        header("Status: 301 Moved Permanently");
        header(sprintf(
            'Location: https://%s%s',
            $_SERVER['HTTP_HOST'],
            $_SERVER['REQUEST_URI']
        ));
        exit();
    }
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal