Da última vez, tive um problema interessante quando estava implantando meu projeto Symfony no Heroku.
Eu uso FosUserBundle para gerenciar contas e às vezes vi uma página em branco – era um erro de PHP.
Eu olhei nos registros e encontrei a mensagem de erro:
Fatal error: Call to undefined function FOSUserBundleUtilmb_convert_case() in /application/vendor/bundles/FOS/UserBundle/Util/Canonicalizer.php on line 18
A conclusão é simples: a extensão mbstring (string multibyte) é necessária, mas está desativada na minha hospedagem.
Infelizmente você não pode modificar o arquivo php.ini no Heroku e você precisa adicionar a extensão de outra maneira.
Como habilitar extensões PHP no Heroku?
Presumo que você use o Composer, então adicionar a extensão deve ser fácil.
Vá para o seu projeto e abra o arquivo composer.json e encontre a seção require .
Por exemplo:
"require": {
"php": ">=5.3.3",
"twig/extensions": "~1.0"
},
Adicione a esta seção o nome de sua extensão que você deseja ativar (no meu caso, adicionei mbstring). O resultado deve ser assim:
"require": {
"php": ">=5.3.3",
"twig/extensions": "~1.0",
"ext-mbstring": "*"
},
A próxima etapa é atualizar seu composer.lock
Vá para o console e digite:
$ composer update
Após atualizar o compositor, você deve confirmar suas alterações e enviar para o controle remoto heroku.
Após a implantação do processo, tudo funcionará bem.
Obrigado!