Ubuntu 14.04 の php5-imap が有効になっていません

Ubuntu 14.04 の php5-imap が有効になっていません

apt-get install php5-imap

まだ手動でやらなければならない

php5enmod imap

奇妙で矛盾しているように思えます。これには何か特別な理由があるのでしょうか?

答え1

はい、これは少し奇妙です。これをインストールするために必要な手順は次のとおりです(問題が発生する将来のユーザー向け)。

sudo apt-get install php5-imap
sudo php5enmod imap
sudo service apache2 restart

答え2

私も同じ問題に遭遇しましたが、もう数年が経ちました。マーク・アロニスの答えは正解ですですが、ソフトウェアが変更されました。代わりに以下を使用してください:

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

(申し訳ありませんが、まだコメントを残すことができません)

答え3

特別な理由があるかどうかという質問に答えると、はい、あります ;) Apache と PHP をいくつかの方法でインターフェイスできます (mod_php、cgi、fcgi、scgi、php-fpm、cli ...)。また、同じマシンで複数のサーバー API (SAPI) を並行して使用し、サイト/vhost ごとにどれを使用するかを決めることができます (パフォーマンス、セキュリティ、互換性などの問題を考慮して)。

PHP モジュールがインストールだけでアクティブ化されると、利用可能なすべての SAPI でアクティブ化されます。しかし、差別化が必要な場合はどうでしょうか。php-fpm でモジュールを利用できるようにしたい (十分なセキュリティ チェックを設定したため) が、コマンド ライン CLI インターフェイスからは利用できないようにしたいとします。または、さまざまな SAPI に対してさまざまな方法でモジュールを構成したいとします。または、誰かがサーバーを攻撃している間にモジュールを一時的に非アクティブ化する必要があり、1 日かけてセットアップして微調整した構成を失いたくないとします。

これらのことを行うために、 の下にディレクトリと設定ファイルの構造があります。Apache vhosts に対して/が行うことと、Apache モジュールに対して/が行う/etc/php5ことと非常によく似ていますが、 /を使用して PHP モジュールを管理できます。a2ensitea2dissitea2enmoda2dismodphpenmodphp5dismod

関連情報