Après
apt-get install php5-imap
Je dois encore faire manuellement
php5enmod imap
ce qui semble étrange et incohérent. Y a-t-il une raison particulière pour ça?
Oui c'est un peu bizarre. Les étapes à suivre pour l’installer (pour les futurs utilisateurs qui ont des problèmes sont les suivantes)
Sudo apt-get install php5-imap
Sudo php5enmod imap
Sudo service Apache2 restart
Je suis tombé sur le même problème, mais quelques années se sont écoulées. La réponse de Mark Aronis est correcte , mais le logiciel a changé. Utilisez cela à la place:
Sudo apt-get install php7.0-imap
Sudo phpenmod imap
(Sry, je ne peux pas encore laisser de commentaires)
Pour répondre à la question s'il existe une raison particulière, oui, il y a;) Vous pouvez interfacer Apache avec PHP de plusieurs manières (mod_php, cgi, fcgi, scgi, php-fpm, cli ...) . Et vous pouvez utiliser plusieurs de ces API de serveur (SAPI) sur la même machine en parallèle et choisir par site/vhost laquelle utiliser (en tenant compte de problèmes tels que les performances, la sécurité ou la compatibilité).
Si les modules PHP étaient activés simplement par l'installation, ils le seraient par l'intermédiaire de toutes les SAPI disponibles. Mais que faire si vous avez besoin de différencier? Peut-être souhaitez-vous un module disponible pour php-fpm (car vous y avez configuré suffisamment de contrôles de sécurité), mais pas à partir de l'interface en ligne de commande cli? Ou vous souhaitez configurer le module de différentes manières pour différentes SAPI. Ou vous avez juste besoin de désactiver temporairement un module pendant que quelqu'un attaque votre serveur et vous ne voulez pas perdre la configuration que vous avez travaillée un jour pour la configurer et la peaufiner.
Pour faire ces choses, il existe une structure de répertoires et de fichiers de configuration sous /etc/php5
. Et tout à fait similaire à ce que a2ensite
/a2dissite
fait pour les vhosts Apache et ce que a2enmod
/a2dismod
fait pour les modules Apache, vous pouvez gérer les modules PHP avec phpenmod
/php5dismod
.