
Tela branca no CodeIgniter 4, código-fonte da página vazio, nenhum aviso, nenhum 500 na tela. Não é bug misterioso: seu .env está em production, e produção desliga a exibição de erro. O erro aconteceu, você é que não está vendo.
cd /var/www/meuapp
# se ainda nao existe .env, o CI4 traz um modelo chamado env
cp env .env
sed -i 's/^#? *CI_ENVIRONMENT.*/CI_ENVIRONMENT = development/' .env
grep CI_ENVIRONMENT .envRecarregue a página e o erro aparece com stack trace. O framework carrega um arquivo de boot por ambiente: app/Config/Boot/production.php deixa o display_errors em 0, enquanto app/Config/Boot/development.php liga tudo com E_ALL. A linha do .env vem comentada de fábrica e, sem ela, o CI4 assume production.
Trocou e continuou branco? O ambiente pode estar vindo de fora. O carregador do .env não sobrescreve variável que já existe, então um fastcgi_param CI_ENVIRONMENT production; no nginx ou um env[CI_ENVIRONMENT] = production no pool do PHP-FPM ganha do arquivo.
sudo chown -R www-data:www-data writable
sudo chmod -R 775 writable
tail -n 50 writable/logs/log-2026-08-31.logÉ um arquivo por dia, no formato log-AAAA-MM-DD.log. Se writable/logs não tem permissão de escrita para o usuário do PHP-FPM, você fica sem log e sem tela, que é o branco total. Confira também o $threshold em app/Config/Logger.php: no padrão 4 ele só grava de error para cima, então warning (5), notice (6) e debug (8) nem chegam no arquivo. Suba para 9 enquanto estiver caçando o problema.
Terminou de investigar, volte o CI_ENVIRONMENT para production no mesmo minuto e devolva o $threshold para 4. Stack trace do CI4 mostra trecho de arquivo e variável de ambiente, senha de banco incluída, para qualquer um que provocar o erro de novo.
O WordPress só oferece hourly, twicedaily, daily e weekly. Use o filtro cron_schedules para criar um intervalo de 5 minutos…
Dispare pela linha de comando o e-mail de um pedido que já existe na loja e descubra se a falha…
O Google Ads acusa consentimento ausente porque o gtag sobe antes do banner. Veja como injetar o default denied do…
A tela Saúde do site avisa que faltam extensões como intl, imagick ou zip: instale no PHP 8.3, reinicie o…
Chegou um chamado sem passo a passo e sem exemplo. Veja como virar esse relato em um caso de teste…
Negar /.env no nginx parece resolvido até alguém pedir /wp-content/uploads/.env ou backup.sql. As regras que testei e os furos que…