Hello.
Je voudrais rediriger site.net vers www.site.net, avec un .htaccess on fait quelque chose comme :
RewriteEngine On
RewriteCond %{HTTP_HOST} ^site.net$
RewriteRule ^(.*) http://www.site.net/$1 [QSA,L,R=301]
Mon problème c'est que le site.net est hébergé par unetun et il y a une sorte de proxy https dont les urls ont la forme https://ssl.1and1.fr/site.net/
Je voudrais donc rediriger tout vers www. sauf le https://ssl.1and1.fr/
Que dois-je modifier et/ou ajouter à mon .htaccess?
D'avance merci : )
# plusieurs conditions
Posté par NeoX . Évalué à 2.
[^] # Re: plusieurs conditions
Posté par i M@N (site web personnel) . Évalué à 0.
c'est justement ce que je cherche à déterminer … le problème reste entier!
wind0w$ suxX, GNU/Linux roxX!
[^] # Re: plusieurs conditions
Posté par NeoX . Évalué à 1.
comment tu as trouvé pour la premiere ?
man et google doivent pouvoir t'aider afin de ne pas simplement copier/coller sans comprendre
ici le manuel de mod_rewrite avec toutes les options possibles (1er resultat de http://lmgtfy.com/?q=htaccess+rewrite+condition)
http://httpd.apache.org/docs/current/mod/mod_rewrite.html
et plus specialement le paragraphe : RewriteCond Directive
[^] # Re: plusieurs conditions
Posté par i M@N (site web personnel) . Évalué à 0. Dernière modification le 20 octobre 2012 à 19:26.
J'ai expliqué le problème assez clairement et je poste ici parce que ça fait déjà un moment que je galère dessus.
il semble que ce que j'essaie faire soit assez particulier (à cause de la configuration chez l'hébergeur peut-être) puisque aucun de mes tests ne fonctionnent.
Normalement ceci devrait fonctionner mais ça ne fonctionne pas :
RewriteEngine on
RewriteBase /
#si ça ne commence pas par www.site.net ou ssl.1and1.fr redirection vers www.site.net
RewriteCond %{HTTP_HOST} !^www.site.net [NC]
RewriteCond %{HTTP_HOST} !^ssl.1and1.fr [NC]
RewriteRule (.*) http://www.site.net/$1 [QSA,R=301,L]
Pourquoi?
wind0w$ suxX, GNU/Linux roxX!
[^] # Re: plusieurs conditions
Posté par NeoX . Évalué à 3.
ca ne fait pas ce que tu veux parce que dans ton code
tu ne parles pas du https
et d'apres ton premier post, c'est le https que tu veux detecter et NE PAS rediriger.
https, par defaut c'est sur le port 443, ca peut donc etre un test en plus à faire
du coup ce que tu veux c'est que
1°) ce ne soit pas du https ou pas sur le port 443
ET
2°) ce soit sans le www initial pour le rajouter
# solution PHP
Posté par i M@N (site web personnel) . Évalué à 0. Dernière modification le 21 octobre 2012 à 13:49.
Bon en fait c'est un proxy https sur le port 80 avec le même HTTP_HOST qu'en http …
Donc la solution que j'ai trouvée avec PHP :
C'est moche mais ça fonctionne.
wind0w$ suxX, GNU/Linux roxX!
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.