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();
Bonjour,
pour infos, il est bien possible de mettre des wilcards pour un nom de domaine, tout du moins avec Bind
[...] Ce billet était mentionné sur Twitter par ► Joël LE CORRE. ► Joël LE CORRE a dit: Carrément utile ça, direct en favori !! RT @nilparra: Associer un sous-domaine à une application symfony http://bit.ly/aNxyiw [...]