Sem saber os erros específicos que você está encontrando, isso não é fácil de diagnosticar. Mas estou confiante que isso não tem nada a ver com um sistema sendo CentOS e outro sendo Debian; O código PHP é executado em qualquer sistema que possa executar código PHP.
Tudo o que disse, você afirma isso:
What is the difference besides
apache2
andhttpd
. How can I make it work without code modifications?
Não há 100% de diferença entre apache2
e httpd
entre Debian ( apache2
) e CentOS ( httpd
). Esses são simplesmente nomes binários do sistema e a equipe principal de desenvolvimento do CentOS / RedHat / Fedora parece preferir o moniker httpd
mais genérico para o Apache, em vez do apache2
específico da marca.
Sabendo disso, estou bastante confiante de que se este é um problema de código PHP, isso não tem nada a ver com o Apache. Pelo contrário, pode haver problemas com as versões instaladas do PHP 5 em execução em cada máquina.
Por exemplo, códigos que rodam bem no PHP 5.1 não necessariamente rodam bem no PHP 5.2, 5.3, 5.4, etc ... Cada release de menor e maior número do PHP é compatível com versões anteriores do PHP, mas pode haver pequenas mudanças na funcionalidade do código que poderiam fazer com que o código do PHP 5.3 se afogasse no PHP 5.4.
Na verdade, na minha experiência pessoal, muitos dos sites que eu gerencio estão permanecendo no PHP 5.3 agora até que as atualizações do código PHP são feitas para tornar o código “legal” com o PHP 5.4. Essas mudanças envolvem apenas o ajuste de algumas funções principais para acomodar mudanças de interface / função-núcleo entre o PHP 5.3 e 5.4, mas é sobre isso; não há pressa para lidar com isso ainda, porque o sistema operacional central desses sistemas tem o PHP 5.3 instalado e funciona bem. Recomendamos que você compare os números da versão do plug-in Apache do PHP, verificando a saída de phpinfo()
em ambos os servidores e ver quais versões estão instaladas e sendo usadas em cada uma delas. Para fazer isso, basta criar um arquivo na raiz da web de cada servidor chamado phpinfo.php
dessa forma; Estou usando o nano
como editor de texto, mas sinta-se à vontade para usar qualquer editor de texto de sua preferência:
nano /var/www/phpinfo.php
Observe também que estou usando /var/www/
como seu caminho webroot. não se esqueça de alterar isso para corresponder à raiz da web do seu sistema real.
Agora basta colocar o código a seguir nesse arquivo phpinfo.php
:
<?php
// Show all information, defaults to INFO_ALL
phpinfo();
?>
Agora carregue esse phpinfo.php
por meio de um webbrowser por meio de um URL como este. altere o nome do host para corresponder ao nome do host real do seu sistema:
http://localhost/phpinfo.php
Logo no topo da página haverá uma grande faixa roxa que diz exatamente qual versão do PHP você está usando como esta que mostra claramente que o sistema que estou testando está usando PHP versão 5.4.10:
Note que, embora a maioria das versões instaladas do PHP possua potencialmente um interpretador de linha de comando, esse interpretador de linha de comando do PHP não tem nada a ver com a versão do plug-in do Apache PHP. Portanto, a saída de php -v
só lhe dará informações sobre o interpretador de linha de comando do PHP instalado; phpinfo()
é o que você deve sempre usar para confirmar / verificar se a versão do seu servidor da web está sendo executada.