
Nach
apt-get install php5-imap
Ich muss immer noch manuell tun
php5enmod imap
das erscheint seltsam und inkonsistent. Gibt es dafür einen besonderen Grund?
Antwort1
Ja, das ist ein bisschen seltsam. Die Schritte zur Installation (für zukünftige Benutzer, die Probleme haben) sind wie folgt:
sudo apt-get install php5-imap
sudo php5enmod imap
sudo service apache2 restart
Antwort2
Ich bin auf dasselbe Problem gestoßen, aber inzwischen sind einige Jahre vergangen.Mark Aronis Antwort ist richtig, aber die Software hat sich geändert. Verwenden Sie stattdessen Folgendes:
sudo apt-get install php7.0-imap
sudo phpenmod imap
(Sry, ich kann noch keine Kommentare hinterlassen)
Antwort3
Um die Frage zu beantworten, ob es dafür einen besonderen Grund gibt: Ja, den gibt es ;) Sie können Apache auf verschiedene Arten mit PHP verbinden (mod_php, cgi, fcgi, scgi, php-fpm, cli ...). Und Sie können mehrere dieser Server-APIs (SAPIs) parallel auf derselben Maschine verwenden und je nach Site/vHost entscheiden, welche Sie verwenden möchten (unter Berücksichtigung von Aspekten wie Leistung, Sicherheit oder Kompatibilität).
Wenn PHP-Module einfach durch die Installation aktiviert würden, würden sie über alle verfügbaren SAPIs hinweg aktiviert. Aber was, wenn Sie differenzieren müssen? Vielleicht möchten Sie ein Modul für php-fpm verfügbar haben (weil Sie dort ausreichende Sicherheitsüberprüfungen eingerichtet haben), aber nicht über die Befehlszeilenschnittstelle? Oder Sie möchten das Modul für verschiedene SAPIs auf unterschiedliche Weise konfigurieren. Oder Sie müssen ein Modul nur vorübergehend deaktivieren, während jemand einen Angriff auf Ihren Server ausführt, und möchten die Konfiguration nicht verlieren, an deren Einrichtung und Feinabstimmung Sie einen Tag lang gearbeitet haben.
Um diese Dinge zu tun, gibt es eine Struktur aus Verzeichnissen und Konfigurationsdateien unter /etc/php5
. Und ganz ähnlich wie a2ensite
/ a2dissite
für Apache-Vhosts und a2enmod
/ a2dismod
für Apache-Module können Sie PHP-Module mit phpenmod
/ verwalten php5dismod
.