Redirection 301 avec .htaccess

Fermé
crosslink06 - 19 sept. 2008 à 10:05
 thierry - 26 oct. 2008 à 21:06
Bonjour à tous,

Je souhaite faire une redirection 301 (permanente) via le .htaccess de tous les sous-domaines de mon site vers les répertoires correspondants:

Par exemple :
paris.monsite.com vers http://monsite.com/paris/
marseille.monsite.com vers http://monsite.com/marseille/
...

RewriteCond %{HTTP_HOST} ^\.([a-z\-]+)\.mondomaine.com [NC]
RewriteRule .* http://www.mondomaine.com/%1 [R]
ne marche pas...

Pouvez-vous m'aider SVP.

Merci
Tony

2 réponses

Bon, pour faire rapide :

Imaginons que tes domaines soient dans :
/home/www/<domaine>/
tu aurras donc tes subs domaines dans :
/home/www/<domaine>/<sub-domaine>/

Avec le code suivant tes url pourrons être dans 2 formats et le deux formats seront fonctionnels en même temps
https://www.domainecarneros.com/ et http://www.domaine.com/subdomaine/

En pratique dans ton serveur tu auras :
/home/www/<domaine>/www/ qui serra égale à : https://www.domainecarneros.com/
/home/www/<domaine>/toto/ qui serra égale à : http://www.domaine.com/toto/ et https://www.domainecarneros.com/
etc.....

Ajoute la partie suivante dans ton apache ou la partie Rewrite**** dans un .htaccess
-----------------------------------------------------------------------------------------------------------------------------------------------
NameVirtualHost <IP>:80
<VirtualHost <IP>:80>
*********
*********
RewriteEngine on

RewriteMap lowercase int:tolower
RewriteRule ^(.*) %{HTTP_HOST}$1

RewriteCond /home/www/$1/${lowercase:$2} -d
RewriteRule ^www\.([^./]+)\.[^/.]+/([^/]+)(.*)$ /home/www/$1/${lowercase:$2}$3 [L]

RewriteCond /home/www/$1/${lowercase:$2} -d
RewriteRule ^([^/]+)\.[^/.]+/([^/]+)(.*)$ /home/www/$1/${lowercase:$2}$3 [L]

RewriteRule ^([^/]+)\.([^/.]+)\.[^/]+(.*)$ /home/www/$2/$1$3 [L]
RewriteRule ^([^./]+)\.[^/.]+(.*)$ /home/www/$1/www$2 [L]
</VirtualHost>
-----------------------------------------------------------------------------------------------------------------------------------------------

Et si en plus de tout cela tu paramètres correctement ton DNS tu peux ne plus avoir à modifier ton DNS pour l'ajout de subdomaine à un domaine.

Aller au diable la varice, voila la solution pour le DNS :
Imaginons que le domaine c'est "tata.com" et l'IP du serveur ou ce trouve ce site et les sous site est "212.212.212.212". Et que le serveur d'email pour ce domaine est sur un autre serveur


tata.com. A 212.212.212.212
mail.tata.com. A 212.212.212.100
* CNAME tata.com.
tata.com. MX 10 mail.tata.com.

Et selon les serveurs DNS il faut remplacer le * par un @

Si vous n’avez pas la possibilité chez votre registar d'utiliser le * ou le @ il faut leur demander de rajouter cette ligne " * CNAME tata.com. " manuellement. ils ne refusent pas en générale.


les . ne sont pas là pour faire beau :) il ne faut pas les oubliés
1
Personne ne peut m'aider ?
0
crosslink06@gmail.com
30 sept. 2008 à 11:58
Toujours personne ? SVP
0