Para instalar symfony 3 utilizaremos composer, tal y como hemos indicado anteriormente. Para ello vamos a configurar primero un virtual host dentro de nuestro servidor web.
Configurar Virtual Host
Vamos a configurar un vhost en nuestro servidor wamp para poder llamar a cada proyecto de forma independiente dentro de nuestro navegador. Para ello primero vamos a abrir el gestor de Virtual Host en nuestro servidor wamp.

Veremos una pantalla como la siguiente en nuestro navegador. Desde esta pantalla configuraremos el nombre del virtual host y la ruta absoluta de la carpeta donde guardaremos nuestros archivos.
En mi caso la ruta absoluta de localhost está en C:/wamp64/www y he creado una subcarpeta llamada proyectodemo para montar ahí dentro la instalación del virtual host «http://proyectodemo»
Virtual host | Path absoluto |
---|---|
http://localhost | c:/wamp64/www |
http://ProyectoDemo | c:/wamp64/www/ProyectoDemo |

Al crear nuestro virtual host, si entramos en el navegador y ponemos http://proyectodemo veremos una pantalla de presentación igual a la que veíamos al poner http://localhost
Instalar Symfony
Ahora procederemos a la instalación de Symfony 3 desde la aplicación composer. En esencia lo que vamos a hacer es instalar desde el repositorio de Symfony los archivos en la ruta del virtual host que hemos definido.
- Inicia la consola de windows
Tecla Windows + r
- Escribe el comando cmd y pulsa en ejecutar
A partir de este momento, lo que tenemos que hacer es ir al directorio web donde queremos instalarlo y ejecutar el comando con la siguiente sintaxis:
composer create-project symfony/framework-standard-edition <directorio_instalacion> <version>
La secuencia en el caso de nuestro virtual host «ProyectoDemo» sería la siguiente:
C:\wamp64\www>composer create-project symfony/framework-standard-edition ProyectoDemo/ "3.0.*"
El resultado será una secuencia similar a la que tenemos a continuación.
C:\wamp64\www>composer create-project symfony/framework-standard-edition ProyectoDemo/ "3.0.*" Installing symfony/framework-standard-edition (v3.0.9) - Installing symfony/framework-standard-edition (v3.0.9): Downloading (100%) Created project in ProyectoDemo/ Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Package operations: 31 installs, 0 updates, 0 removals - Installing doctrine/lexer (v1.0.1): Downloading (100%) - Installing doctrine/annotations (v1.2.7): Downloading (100%) - Installing twig/twig (v1.24.1): Downloading (100%) - Installing symfony/polyfill-util (v1.2.0): Downloading (100%) - Installing paragonie/random_compat (v2.0.2): Downloading (100%) - Installing symfony/polyfill-php70 (v1.2.0): Downloading (100%) - Installing symfony/polyfill-php56 (v1.2.0): Downloading (100%) - Installing symfony/polyfill-mbstring (v1.2.0): Downloading (100%) - Installing symfony/symfony (v3.0.9): Downloading (100%) - Installing symfony/polyfill-intl-icu (v1.2.0): Downloading (100%) - Installing psr/log (1.0.0): Downloading (100%) - Installing doctrine/inflector (v1.1.0): Downloading (100%) - Installing doctrine/collections (v1.3.0): Downloading (100%) - Installing doctrine/cache (v1.6.0): Downloading (100%) - Installing doctrine/common (v2.6.1): Downloading (100%) - Installing jdorn/sql-formatter (v1.2.17): Downloading (100%) - Installing doctrine/doctrine-cache-bundle (1.3.0): Downloading (100%) - Installing doctrine/dbal (v2.5.4): Downloading (100%) - Installing doctrine/doctrine-bundle (1.6.3): Downloading (100%) - Installing doctrine/instantiator (1.0.5): Downloading (100%) - Installing doctrine/orm (v2.5.4): Downloading (100%) - Installing incenteev/composer-parameter-handler (v2.1.2): Downloading (100%) - Installing sensiolabs/security-checker (v3.0.2): Downloading (100%) - Installing sensio/distribution-bundle (v5.0.7): Downloading (100%) - Installing sensio/framework-extra-bundle (v3.0.16): Downloading (100%) - Installing monolog/monolog (1.20.0): Downloading (100%) - Installing symfony/monolog-bundle (2.11.1): Downloading (100%) - Installing swiftmailer/swiftmailer (v5.4.3): Downloading (100%) - Installing symfony/swiftmailer-bundle (v2.3.11): Downloading (100%) - Installing sensio/generator-bundle (v3.0.7): Downloading (100%) - Installing symfony/phpunit-bridge (v3.1.2): Downloading (100%) paragonie/random_compat suggests installing ext-libsodium (Provides a modern crypto API that can be used to generate random bytes.) doctrine/doctrine-cache-bundle suggests installing symfony/security-acl (For using this bundle to cache ACLs) sensio/framework-extra-bundle suggests installing symfony/psr-http-message-bridge (To use the PSR-7 converters) monolog/monolog suggests installing aws/aws-sdk-php (Allow sending log messages to AWS services like DynamoDB) monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server) monolog/monolog suggests installing ext-amqp (Allow sending log messages to an AMQP server (1.0+ required)) monolog/monolog suggests installing ext-mongo (Allow sending log messages to a MongoDB server) monolog/monolog suggests installing graylog2/gelf-php (Allow sending log messages to a GrayLog2 server) monolog/monolog suggests installing mongodb/mongodb (Allow sending log messages to a MongoDB server via PHP Driver) monolog/monolog suggests installing php-amqplib/php-amqplib (Allow sending log messages to an AMQP server using php-amqplib) monolog/monolog suggests installing php-console/php-console (Allow sending log messages to Google Chrome) monolog/monolog suggests installing rollbar/rollbar (Allow sending log messages to Rollbar) monolog/monolog suggests installing ruflin/elastica (Allow sending log messages to an Elastic Search server) monolog/monolog suggests installing sentry/sentry (Allow sending log messages to a Sentry server) Generating autoload files > Incenteev\ParameterHandler\ScriptHandler::buildParameters Creating the "app/config/parameters.yml" file Some parameters are missing. Please provide them. database_host (127.0.0.1): database_port (null): database_name (symfony): ProyectoDemo database_user (root): database_password (null): mailer_transport (smtp): mailer_host (127.0.0.1): mailer_user (null): mailer_password (null): secret (ThisTokenIsNotSoSecretChangeIt): > Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap > Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache [39;49m // [39;49mClearing the cache for the [32mdev[39m environment with debug [32mtrue[39m [30;42m [39;49m [30;42m [OK] Cache for the "dev" environment (debug=true) was successfully cleared. [39;49m [30;42m [39;49m > Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installAssets Trying to install assets as [32mrelative symbolic links[39m. --------- ----------------- ---------------- [32m [39m [32m Bundle [39m [32m Method / Error [39m --------- ----------------- ---------------- [33;1mWARNING[39;22m FrameworkBundle copy --------- ----------------- ---------------- [33m ! [NOTE] Some assets were installed via copy. If you make changes to these assets you have to run this command again. [39m [30;42m [39;49m [30;42m [OK] All assets were successfully installed. [39;49m [30;42m [39;49m > Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::installRequirementsFile > Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::prepareDeploymentTarget C:\wamp64\www>
Durante la instalación se nos pedirán los siguientes parámetros que deberás de introducir conforme a las especificaciones del proyecto, no obstante los podremos redefinir más tarde:
- database_host (127.0.0.1):
- database_port (null):
- database_name (symfony):
- database_user (root):
- database_password (null):
- mailer_transport (smtp):
- mailer_host (127.0.0.1):
- mailer_user (null):
- mailer_password (null):
- secret (ThisTokenIsNotSoSecretChangeIt):
Comprobar que Symfony está bien instalado
Para comprobar que la instalación de symfony es correcta, abriremos nuestro navegador y entraremos en http://localhost/proyectodemo/web/. Deberíamos de ver una pantalla similar a la siguiente:

Si queremos ver una pantalla de recomendaciones de verificación de Symfony, entraremos en http://localhost/proyectodemo/web/config.php
