Um problema comum em hospedagens web ocorre quando arquivos com extensão .php, ao invés de serem executados pelo servidor, são automaticamente baixados pelo navegador.
Isso geralmente gera dúvida, pois o PHP aparentemente está funcionando em outras páginas, como no arquivo info.php (phpinfo), mas falha em páginas específicas do sistema.
Causa do problema
Na maioria dos casos, o erro está relacionado às regras de reescrita (Rewrite) no arquivo .htaccess.
Quando a rota principal do site (/) não está corretamente direcionada para o arquivo responsável pela renderização do sistema, o servidor pode tentar entregar o arquivo bruto ao navegador, resultando no download.
Exemplo comum de configuração incorreta:
RewriteRule ^/?$ index.php
Nesse cenário, o sistema foi desenvolvido para rodar a partir do arquivo site.php, porém a raiz do domínio está apontando para outro arquivo.
Solução
Basta ajustar a regra principal no arquivo .htaccess para direcionar corretamente:
RewriteRule ^/?$ site.php
Com essa alteração, o acesso à raiz do domínio passa a carregar corretamente o sistema.
Boas práticas adicionais
Para evitar problemas semelhantes, recomenda-se:
-
Garantir que todas as rotas amigáveis utilizem o arquivo principal correto (site.php, index.php, etc.)
-
Utilizar a flag [L] nas regras RewriteRule para evitar conflitos
-
Criar uma regra de fallback para tratar URLs não encontradas
Exemplo de fallback:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ site.php?p=$1 [L,QSA]
Conclusão
Se o seu site está baixando arquivos .php ao invés de exibir o conteúdo, nem sempre o problema está no PHP.
Na maioria das vezes, trata-se apenas de um erro de roteamento no .htaccess, facilmente corrigido com um simples ajuste.
Se precisar de suporte para configuração ou otimização do seu ambiente, nossa equipe está pronta para ajudar.