Trop de redirections suite au HTTPS

Bonjour,
Je passe par une SSL Gateway pour mon domaine qui redirige sur mon VPS, et je veux donc forcer le HTTPS de mon site. Mais lorsque je mets les deux lignes suivantes dans mon .htaccess :
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://mondomaine.fr/$1 [R=301,L]
, le site ne s'affiche plus (trop de redirections c'est marqué).
Je ne vois pas trop d'où peut venir le pb… Des solutions ?

Bonjour,

Ca peut être parce qu'il essaie de récrire l'url alors qu'elle est déjà en https. Pour éviter cela il faut ajouter un RewriteCond, je ne sais plus la syntaxe, pour qu'il ne fasse pas la réécriture d'URL si cette dernière est déjà en https. Recherche sur le web "réécriture url https" ou quelque chose comme cela.
PS : ah non, ce n'est peut-être pas cela, car le RewriteCond SERVER_PORT 80 fait justement ce teste.

J'ai testé avec ça : RewriteCond %{HTTPS} !=on mais idem… Le HTTP est bien renvoyé vers le HTTPS mais celui-ci n'affiche plus le site… (trop de redirections selon Safari)

Peux-tu poster l'URL de ton site?

Bah je ne pense pas trop avoir le droit… C'est indispensable ?
Mais je viens de tester de faire une redirection permanente via mon fichier de config apache, même issue !


Bah je ne pense pas trop avoir le droit... C'est indispensable ?


Pour voir ce qui se passe lorsque je tape l'URL son mon navigateur.

Ok alors je viens de remettre la condition dans le .htaccess pour que vous voyez.

Effectivement, il y a un problème, moi sous Firefox, j'ai le message:
La page n’est pas redirigée correctement

Firefox a détecté que le serveur redirige la demande pour cette adresse d’une manière qui n’aboutira pas.

La cause de ce problème peut être la désactivation ou le refus des cookies.

Mais en fait c'est surement plutôt une mauvaise formulation de la redirection (ou de la réécriture d'URL) qui fait qu'il tourne en rond. Qu'est-ce que tu as mis exactement dans le .htacess?

Je n'utilise pas vraiment de cookies.
Voilà mon .htaccess :
Options +FollowSymlinks
Options -Indexes
RewriteEngine On
#RewriteCond %{SERVER_PORT} 80
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://www.1futur.fr/$1futur.fr/$1 [R=301,L]

Je pense qu'il vaudrait mieux éviter de récrire en dur le nom de ton site, il vaudrait mieux l'écrire avec des symboles, ce n'est peut-être pas ça le problème, mais ce serait mieux (je vais voir la doc).

Sinon , il faut remettre le premier rewrite cond (enlever le #) , mais il faut mettre [OR] au bout non? Je vais regarder la doc et voir ce qu'il faut mettre exactement.

Sinon, avant de refaire les tests, il vaut mieux vider le cache de ton navigateur.

J'suis parti la dessus, mais idem…
Options +FollowSymlinks
Options -Indexes
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Idem pour ça…
Options +FollowSymlinks
Options -Indexes
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Voila! Merci c'est ce que je voulais dire, mais si cela ne marche pas mieux je ne vois pas. Il faut rechercher sur Internet, voir si la syntaxe est bonne, car dans la doc OVH ils font comme tu as fait (et pour cause : je suppose que tu as fait ce qu'ils proposent :slight_smile: )

Essaie d'enlever le 301, à un moment dans la doc OVH ils disent de le mettre et à un autre moment ils ne le mettent pas, je ne sais pas à quoi il sert.
Sinon OVH propose aussi de faire cela avec une redirection : mettre RedirectPermanent à la place du RewriteRule, et après la syntaxe est la même. Mais si le problème vient de la syntaxe qui suit, on n'est pas plus avancé. D'autant plus que tu as essayé la redirection depuis Apache.

Bon bah j'ai essayé d'enlever le 301, j'obtient une Internal Server Error. Et avec la syntaxe RedirectPermanent, j'ai bine une redirection, mais que de la page d'accueil, si c'est une autre page, il reste en http… C'est donc pas trop ce que je veux. C'est quand même étrange cette affaire!

Je ne comprends pas non plus car tu fais ce qu'ils disent de faire, peux-tu remettre l'URL de ton site (car il a été enlevé, quand on est récemment inscrit sur le forum, les URL sont effacées) , mais si tu la remets j'aurai le temps de la renoter avant qu'elle soit enlevée.

1futur.frfutur.fr

Bon j'ai essayé avec un autre site sur le VPS, même problème… Cela vient surement de la configuration de apache et des hosts virtuels tu penses pas ?

Maintenant ton site marche chez moi, sous Firefox. Ca ne viendrait pas du cache de ton navigateur?


Essaie d'enlever le 301, à un moment dans la doc OVH ils disent de le mettre et à un autre moment ils ne le mettent pas, je ne sais pas à quoi il sert.



Le 301 veut dire redirection permanente !
Sinon
Essaye avec

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://tondomaine.tld/$1 [QSA,L,R=301]
et
`options +FollowSymlinks`

après