Jump to content

Redirection domaines, www et TLD


Recommended Posts

Bonjour

 

J'ai un site multi-domaines (avec du contenu différent), habituellement je mets en place la redirection des extensions et du domaine sans le www en une seule ligne, mais ce coup-ci je n'y arrive pas.

Voici mon fichier :

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301]

Il y a 16 noms de domaines, je souhaiterais que ça fonctionne pour tous, c'est à dire toujours rediriger vers le domaine avec le www et toujours sur le .fr, quel que soit le domaine demandé.

 

Merci...

Link to post
Share on other sites

Qu'est-ce qui ne fonctionne pas ? L'ajout du www ou le %{REQUEST_URI} ?

 

Link to post
Share on other sites

Les extensions ; je n'ai pas fait de modifications, je ne vois pas comment m'y prendre pour conserver le nom de domaine sans le TLD :unsure:

Link to post
Share on other sites

Utilise ceci alors :

RewriteRule /?(.*) http://www.ledomaine.fr/$1  [R=301]
Link to post
Share on other sites

Il y a 16 noms de domaine en tout, j'aimerai bien une règle qui fonctionnent pour tous, tu crois que c'est possible ?

(le contenu et le design change dans le site en fonction du NDD)

Link to post
Share on other sites

Je n'avais pas compris initialement. Je pensais que tu voulais TOUJOURS rediriger vers un même domaine en .fr ...

Mais là ce sont des domaines différents...

 

Ce que j'ai écrit plus haut est donc incorrect !

 

Il faut que je recherche, mais là je manque de temps... :(

 

 

Link to post
Share on other sites
RewriteEngine on 
RewriteCond %{HTTP_HOST} !\.fr$ 
RewriteCond %{HTTP_HOST} ^(.+)\.[^.]+$ 
RewriteRule ^/?(.*)$ http://%1.fr/$1 [P,QSA]

Quelque-chose comme ça ?

Pas testé, mais ça devrait fonctionner (même avec des sous-domaines)

 

 

Link to post
Share on other sites

Hello

 

C'est presque ça mais ça ne fonctionne pas pour les .com qui n'ont pas le "www", il envoie bien sur le .fr mais ne rajoute pas les www

 

Je m'exprime plus clairement :

  • bretagne-ass.com renvoie sur www.bretagne-ass.fr
  • www.bretagne-ass.com => www.bretagne-ass.fr
  • bret-ass.fr => www.bret-ass.fr
  • www.toto-bretagne.com => www.toto-bretagne.fr
  • toto-bretagne.com => sur www.toto-bretagne.fr
  • ... pour n domaines

J'ai retiré le "P" sinon ça me changeait le $_SERVER["REMOTE_ADDR"] et pour l'instant c'est ce qui sert à fermer le site au public

A quoi ça sert exactement ce P ?

Link to post
Share on other sites

L'utilisation du drapeau [P] entraîne le traitement de la requête par le module mod_proxy, et ceci via une requête de mandataire. Par exemple, si vous voulez que toutes les requêtes d'images soient traitées par un serveur d'images annexe, vous pouvez utiliser une règle de ce style :

RewriteRule "/(.*)\.(jpg|gif|png)$" "http://images.example.com/$1.$2" [P]

L'utilisation du drapeau [P] provoque aussi l'effet du drapeau [L] - autrement dit, la requête est immédiatement envoyée au mandataire, et toute règle ultérieure sera ignorée.

 

 

Essaie ça :

RewriteEngine on 
RewriteCond %{HTTP_HOST} !\.fr$ 
RewriteCond %{HTTP_HOST} ^(www\.)?(.+)\.[^.]+$ 
RewriteRule ^/?(.*)$ http://www.%2.fr/$1 [QSA,L]
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...