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
http://subdomaine.domaine.com et http://www.domaine.com/subdomaine/
En pratique dans ton serveur tu auras :
/home/www/<domaine>/www/ qui serra égale à : http://www.domaine.com/
/home/www/<domaine>/toto/ qui serra égale à : http://www.domaine.com/toto/ et http://toto.domaine.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