Coté serveur web
Il faut soit créer des virtual host pour tous vos sous-domaine.
Soit créer un seul virtual host en utilisant des wildcards dans le ServerAlias, du coup tous les sous-domaines pourraient correspondre à une application, plus besoin de créer autant de virtual hosts que de sous-domaine. Il doit même être possible d’utiliser les wildcards dans la déclaration du domaine dans le gestionnaire de dns.
ServerName domain.tld ServerAlias *.domain.tld
Coté symfony
Il faut renommer le fichier web/index.php en web/frontend.php
Puis re-créer le fichier web/index.php en y mettant le code qui permettra de choisir l’application
en fonction du sous domaine.
Voici un exemple, il suffit de modifier le switch() pour l’adapter à vos besoins :
require_once(dirname(__FILE__).'/../config/ProjectConfiguration.class.php'); // Trouve le sous-domaine list($subdomain, $domain, $tld) = explode('.', $_SERVER['HTTP_HOST']); // En deduit l'application switch($subdomain) { case "documentation": $app = "documentation"; break; default: $app = "frontend"; break; } $configuration = ProjectConfiguration::getApplicationConfiguration($app, 'prod', false); sfContext::createInstance($configuration)->dispatch();
