Documentação do Symfony2
Renderizada do repositório symfony-docs-pt-BR no Github
Infelizmente, o contexto de linha de comando não sabe sobre o seu VirtualHost ou nome de domínio. Isto significa que se você gerar URLs absolutas em um comando de Console, você provavelmente vai acabar com algo como http://localhost/foo/bar o que não é muito útil.
Para corrigir isso, você precisa configurar o “contexto do pedido”, que é uma maneira elegante de dizer que você precisa configurar o seu ambiente para que ele saiba qual URL ele deve usar ao gerar as URLs.
Há duas maneiras de configurar o contexto do pedido: a nível da aplicação e por Comando.
Para configurar o Contexto do Pedido - que é usado pelo Gerador de URL - você pode redefinir os parâmetros que ele usa como valores padrão para alterar o host padrão (localhost) e o esquema (http). Note que isso não impacta nas URLs geradas através de solicitações normais da web, uma vez que substituirá os padrões.
Para alterá-lo em apenas um comando, você pode simplesmente chamar o serviço do Contexto de Pedido e sobrescrever as suas configurações:
// src/Acme/DemoBundle/Command/DemoCommand.php
// ...
class DemoCommand extends ContainerAwareCommand
{
protected function execute(InputInterface $input, OutputInterface $output)
{
$context = $this->getContainer()->get('router')->getContext();
$context->setHost('example.com');
$context->setScheme('https');
// ... your code here
}
}