2010-09-14 17 views
5

Mi aplicación Symfony debe conseguir el lenguaje del usuario subdominio:Symfony seleccione Basado en subdominio

en.project.com - Inglés para fr.project.com - para el francés

y así sucesivamente ... Filtro especial Obtenga 'GET' param 'lang' del uri actual y guárdelo en el atributo de usuario. ¿Cómo puedo configurar Apache Virtual Host Config para múltiples subdominios?

+0

Mi café debe estar caliente, pero en cambio es tibia .. –

Respuesta

0

intenta agregar como ServerAlias en su archivo de configuración httpd.

2
<VirtualHost *:80> 
ServerName blah.com 
ServerAlias de.blah.com en.blah.com fr.blah.com 
... 
</VirtualHost> 

Más información acerca de los alias de servidor: http://httpd.apache.org/docs/2.0/en/mod/core.html#serveralias

Su filtro de Symfony puede limitarse a analizar el dominio durante la primera petición y fijar una variable de sesión. Esto no se ha probado, pero debería funcionar:

<?php class localeFilter extends sfFilter 
{ 
    public function execute($filterChain) 
    { 
    // Execute this filter only once 
    if ($this->isFirstCall()) { 
     $host = $_REQUEST['HTTP_HOST']; 
     $locale = array_shift(explode(".",$host)); 
     $this->getUser()->setAttribute('locale', $locale); 
    } 

    // Execute next filter 
    $filterChain->execute(); 
    } 
} ?> 
Cuestiones relacionadas