
Depois
apt-get install php5-imap
ainda tenho que fazer manualmente
php5enmod imap
o que parece estranho e inconsistente. Existe alguma razão particular para isso?
Responder1
Sim, isso é um pouco estranho. As etapas envolvidas para instalar isso (para futuros usuários que tiverem problemas são as seguintes)
sudo apt-get install php5-imap
sudo php5enmod imap
sudo service apache2 restart
Responder2
Me deparei com o mesmo problema, mas agora alguns anos se passaram.A resposta de Mark Aronis está correta, mas o software mudou. Use isso em vez disso:
sudo apt-get install php7.0-imap
sudo phpenmod imap
(Desculpe, não posso deixar comentários ainda)
Responder3
Para responder à pergunta se há uma razão específica para isso, sim, existe;) Você pode fazer a interface do Apache com o PHP de várias maneiras (mod_php, cgi, fcgi, scgi, php-fpm, cli ...). E você pode usar várias dessas APIs de servidor (SAPIs) na mesma máquina em paralelo e decidir por site/vhost qual usar (considerando questões como desempenho, segurança ou compatibilidade).
Se os módulos PHP fossem ativados apenas pela instalação, eles seriam ativados em todos os SAPIs disponíveis. Mas e se você precisar diferenciar? Talvez você queira um módulo disponível para php-fpm (porque você configurou verificações de segurança suficientes lá), mas não na interface CLI da linha de comando? Ou você deseja configurar o módulo de diferentes maneiras para diferentes SAPIs. Ou você só precisa desativar temporariamente um módulo enquanto alguém está executando um ataque em seu servidor e não quer perder a configuração que você trabalhou um dia para configurar e ajustar.
Para fazer essas coisas, existe uma estrutura de diretórios e arquivos de configuração em /etc/php5
. E bastante semelhante ao que a2ensite
/ a2dissite
faz para vhosts Apache e ao que a2enmod
/ a2dismod
faz para módulos Apache, você pode gerenciar módulos PHP com phpenmod
/ php5dismod
.