php5-imap в Ubuntu 14.04 не включен

21

После

apt-get install php5-imap

Я все еще должен сделать вручную

php5enmod imap

что кажется странным и непоследовательным. Есть ли какая-то конкретная причина для этого?

user294583
источник

Ответы:

34

Да, это немного странно. Шаги, необходимые для установки этого (для будущих пользователей, у которых есть проблемы, заключаются в следующем)

sudo apt-get install php5-imap
sudo php5enmod imap
sudo service apache2 restart
Марк Арони
источник
root @ 4385-2889-2142: ~ # sudo php5enmod imap sudo: php5enmod: команда не найдена
Каспар Л. Пальги
3
@ KasparL.Palgi, когда вы вошли в систему как root, вам не нужен sudo. Это просто не имеет смысла.
Декель
6

Я столкнулся с той же проблемой, но прошло несколько лет. Марк Аронис ответ правильный , но программное обеспечение изменилось. Используйте это вместо:

sudo apt-get install php7.0-imap 
sudo phpenmod imap

(Извините, я пока не могу оставлять комментарии)

Qohelet
источник
Снова изменилось, теперь это: php7.2-imap
spcial
1

Чтобы ответить на вопрос, есть ли для этого особая причина, да, есть;) Вы можете связать Apache с PHP несколькими способами (mod_php, cgi, fcgi, scgi, php-fpm, cli ...). Кроме того, вы можете использовать несколько таких серверных API-интерфейсов (SAPI) на одном компьютере параллельно и решать по сайту / хосту, какой из них использовать (учитывая такие вопросы, как производительность, безопасность или совместимость).

Если бы модули PHP активировались только при установке, они активировались бы во всех доступных SAPI. Но что, если вам нужно дифференцироваться? Может быть, вам нужен модуль, доступный для php-fpm (потому что вы настроили там достаточно проверок безопасности), но не из командной строки cli? Или вы хотите настроить модуль по-разному для разных SAPI. Или вам просто нужно временно деактивировать модуль, пока кто-то проводит атаку на вашем сервере, и не хотите терять конфигурацию, которую вы работали в течение дня, для настройки и настройки.

Для этого есть структура каталогов и конфигурационных файлов /etc/php5. И очень похоже на то, что a2ensite/ a2dissiteделать для Apache vhosts и что a2enmod/ a2dismodделать для модулей Apache, вы можете управлять модулями PHP с помощью phpenmod/ php5dismod.

Хеннинг Кокербек
источник