L'idéal serait de créer des répertoires de documents complètement distincts pour chaque sous-domaine. vhost
dans apache est la voie à suivre. Si vous voulez cependant le faire à votre façon (les sous-domaines redirigeant vers des fichiers individuels), alors c'est un peu plus de travail, mais c'est toujours faisable. Tout d'abord, définissez le fichier mod_vhost
avec un caractère de remplacement :
<VirtualHost 111.22.33.55>
DocumentRoot /www/subdomain
ServerName www.mydomain.com
ServerAlias *.mydomain.com
...
</VirtualHost>
Ensuite, à l'intérieur de ce VirtualHost
configurer les règles de réécriture en utilisant mod_rewrite
:
<Location "/">
RewriteCond %{HTTP_HOST} ^user1.mydomain.com$
RewriteRule ^\/$ http://www.mydomain.com/index2.php [R=301,L]
RewriteRule ^\/index.php$ http://www.mydomain.com/index2.php [R=301,L]
RewriteCond %{HTTP_HOST} ^user2.mydomain.com$
RewriteRule ^\/$ http://www.mydomain.com/index3.php [R=301,L]
RewriteRule ^\/index.php$ http://www.mydomain.com/index3.php [R=301,L]
...
</Location>
Notez cependant que cela ne fonctionnera correctement que pour /
y /index.php
aux sous-domaines. Il est préférable de créer des répertoires racine distincts pour chaque sous-domaine si vous avez l'intention de faire plus que cela.