Il s'agit d'un serveur Apache httpd 2.2.
Nous exigeons que l'accès à ce serveur Web soit crypté par HTTPS.
Lorsque les clients Web visitent mon site à http://www.example.org/ $ foo (port 80), je souhaite rediriger leur demande vers le site Web chiffré HTTPS à https://www.example.org/ $ foo.
Il semble y avoir deux façons courantes de procéder:
La première méthode utilise la directive ' Redirect ' de mod_alias:
<VirtualHost *:80>
Redirect permanent / https://www.example.org/
</VirtualHost>
La deuxième méthode utilise mod_rewrite:
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>
Quelle est la différence entre une "Redirection permanente" et la strophe mod_rewrite. Est-ce que l'un est meilleur que l'autre?
la source
Redirect
directive gère mieux la redirection de http vers https. Voir le commentaire de Stefan ci-dessous et consultez cette section de la documentation Apache: httpd.apache.org/docs/current/rewrite/avoid.html#redirectApache recommande désormais l'utilisation de
Redirect
frommod_alias
au lieu d'utiliserRewriteRule
frommod_rewrite
. Voir https://httpd.apache.org/docs/current/rewrite/avoid.html#redirect , qui dit:la source
Les moteurs de recherche verront une redirection permanente et mettront à jour leurs index en conséquence.
la source