Після
apt-get install php5-imap
Я все ще маю робити вручну
php5enmod imap
що здається дивним і непослідовним. Чи є якась конкретна причина для цього?
Після
apt-get install php5-imap
Я все ще маю робити вручну
php5enmod imap
що здається дивним і непослідовним. Чи є якась конкретна причина для цього?
Відповіді:
Так, це трохи дивно. Для встановлення цього кроку (для майбутніх користувачів, які мають проблеми, такі)
sudo apt-get install php5-imap
sudo php5enmod imap
sudo service apache2 restart
Я зіткнувся з тією ж проблемою, але зараз минуло кілька років. Відповідь Марка Ароніса правильна , але програмне забезпечення змінилося. Використовуйте це замість:
sudo apt-get install php7.0-imap
sudo phpenmod imap
(Шри, я ще не можу залишати коментарів)
Щоб відповісти на питання, чи є певна причина для цього, так, є;) Ви можете інтерфейсувати Apache з PHP декількома способами (mod_php, cgi, fcgi, scgi, php-fpm, cli ...). І ви можете використовувати кілька таких API сервера (SAPI) на одній машині паралельно і вирішувати веб-сайт / vhost, який використовувати (враховуючи такі питання, як продуктивність, безпека чи сумісність).
Якщо модулі PHP активуються лише після встановлення, вони активуються у всіх доступних SAPI. Але що робити, якщо вам потрібно розмежуватись? Можливо, ви хочете, щоб модуль був доступний для php-fpm (тому що ви встановили достатню кількість перевірок безпеки), але не через інтерфейс cli командного рядка? Або ви хочете налаштувати модуль різними способами для різних SAPI. Або вам просто потрібно тимчасово деактивувати модуль, коли хтось здійснює атаку на ваш сервер, і не хочете втрачати конфігурацію, яку ви працювали протягом дня, щоб налаштувати і виправити.
Для цього потрібно мати структуру каталогів та конфігураційних файлів /etc/php5
. І досить схоже на те, що a2ensite
/ a2dissite
робити для Apache vhosts і що a2enmod
/ a2dismod
робити для модулів Apache, ви можете керувати модулями PHP за допомогою phpenmod
/ php5dismod
.