J'essaie d'appliquer https: // www. code> sur toutes mes pages sauf
hotels.php code>.
Mon code actuel ci-dessous ajoute
www. Code> deux fois, c'est-à-dire
https://www.wwww.example.com code>
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^\/hotels.php\/
RewriteRule (.*) https://www.%{HTTP_HOST}/$1 [L,R=301]
RewriteCond %{HTTPS} =on
RewriteCond %{REQUEST_URI} \/hotels.php\/
RewriteRule (.*) http://www.%{HTTP_HOST}/$1 [L,R=301]
3 Réponses :
Pas un maître avec Htaccess Regex, bit cela fonctionne pour moi:
<IfModule mod_rewrite.c> RewriteCond %{HTTPS} off [OR] RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteCond %{HTTP_HOST} ^(.*)$ [NC] RewriteRule (.*) https://www.%1/$1 [R=301,L] </IfModule>
Essayez ces conditions de réécriture:
RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] # force https:// for all except your desired URLs RewriteCond %{HTTPS} off RewriteCond %{THE_REQUEST} !/hotels.php/ [NC] RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] # force http:// for your desired URLs RewriteCond %{HTTPS} on RewriteCond %{THE_REQUEST} /hotels.php/ [NC] RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Vous devez vérifier si www est dans l'URI de la demande lorsque vous vérifiez HTTPS. Essayez ceci:
Tout fonctionne bien avec cela, mais des hôtels.php toujours en cours de chargement avec https: // ne le redirige pas à http: //
Déjà été posé et répondu à Stackoverflow.
@jasie S'il vous plaît voter pour fermer / drapeau comme dupliquer avec le Q / A approprié.
Réécriture configurée dans .htaccess "LOOPS" jusqu'à ce qu'aucune règle ne correspond plus. après i> vous avez redirigé de manière externe à
https://www.example.com/foo code> déjà (ou si vous avez demandé cela pour commencer par), votre premier ensemble de conditions et de règles Redirige à nouveau - mais la variable
http_host code> contient maintenant
www.example.com code> déjà, à laquelle vous ajoutez un autre
www. code> devant. Vous avez besoin d'une condition supplémentaire dans cet endroit qui vérifie si le nom d'hôte ne commence pas avec
www. Code> déjà, voir Stackoverflow.com/a/4958847/10283047 pour un exemple.
Dupliqué possible de Exception de redirection HTAccess