Я хотел добиться того же. В Symfony 1.4 вот что я сделал:
Создан домен => карта культуры в app.yml
all:
languages:
domain_map:
www.example.com: en
www.example.it: it
www.example.es: es
Создан класс myPatternRouting
, расширяющий sfPatternRouting
class myPatternRouting extends sfPatternRouting
{
public function getConfigFileName()
{
$domain_map = sfConfig::get('app_languages_domain_map');
$domain = $_SERVER['SERVER_NAME'];
$culture = isset($domain_map[$domain]) ? $domain_map[$domain] : 'en';
$routing = sprintf('config/routing.%s.yml', $culture);
return sfContext::getInstance()->getConfigCache()->checkConfig($routing, true);
}
}
Изменил завод для маршрутизации в factories.yml
all:
routing:
class: myPatternRouting
Создана запись обработчика конфигурации для нового шаблона файлов routing.yml в config_handlers.yml
config/routing.*.yml:
class: sfRoutingConfigHandler
А затем создал файлы маршрутизации как routing.[culture].yml
И это работает :) 1023 *