Vamos a ver un mini tutorial que seguro que puede resultar útil en el momento de desplegar nuestros proyectos Symfony2 en servidores compartidos en los que es posible que el nombre del directorio público sea www, httpdocs o public_html, en lugar de web.
Una primera opción puede ser subir todo el código de la aplicación Symfony a una carpeta en la raíz del servidor y reemplazar su directorio público con un enlace simbólico a la carpeta web del proyecto Symfony. Es decir, suponiendo que subimos todo el código a una carpeta app_symfony y que el directorio público de nuestro servidor es www, eliminaríamos primero esa carpeta www y lanzaríamos el siguiente comando:
$ ln -s app_symfony/web www
El problema que encontramos al hacerlo de este modo, es que nuestro servidor compartido puede no contar con el comando ln necesario para generar el enlace simbólico. En este caso, podemos optar por subir todo el código de la aplicación Symfony a la raíz del servidor, renombrar la carpeta web por el nombre que tenga la del servidor compartido (ya sea www, httpdocs o public_html) y modificar la entrada "symfony-web-dir"
en el composer.json del proyecto, dejándolo de esta manera (suponiendo que el directorio público de nuestro servidor es www:
{
...
"extra": {
...
"symfony-web-dir": "www",
...
}
}