web-dev-qa-db-ja.com

Apache 2.4は、mpm_preforkモジュールとの競合のため続行できません

12.04から14.04にアップデートしたばかりで、Apache 2.4のセットアップが困難になりました。次のエラーが表示されます。

Setting up Apache2 (2.4.10-1+deb.sury.org~trusty+1) ...
ERROR: Module mpm_prefork is enabled - cannot proceed due to conflicts. It needs to be disabled first!
dpkg: error processing package Apache2 (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 Apache2
E: Sub-process /usr/bin/dpkg returned an error code (1)

Apacheが続行できるように、mpm_preforkを無効にするにはどうすればよいですか?

3
DanielAttard

適切なコマンドを使用して、Apacheのmodを無効にします。

Sudo a2dismod mpm_prefork
6
Renato

シンボリックリンク/etc/Apache2/mods-enabled/mpm_prefork.{conf,load}を削除してください:

rm /etc/Apache2/mods-enabled/mpm_prefork.{conf,load}

次に、Apache2パッケージの構成を再起動します。

apt-get install -f

または:

apt-get install Apache2

しかし、もっと重要なのは、これらがどのようにインストールされているかを事前に自問することです。 /etc/Apache2を起動する前に、これらの(たとえば)古いapt-get install Apache2ディレクトリをコピーした可能性があります。

3
vaab

このモジュールには明らかに3つの異なるバージョンがありますmpm_worker vs mpm_prefork vs mpm_event)、およびエラーコードは誤解を招く可能性があります。 3つのバリアントをすべて無効にしてから再インストールしてください。私の場合(Mint 19.1/Ubuntu 18.04、php7.2)は3番目でした:

root@machine:/var/www/html# Sudo a2dismod mpm_worker
Module mpm_worker already disabled
root@machine:/var/www/html# Sudo a2dismod mpm_prework
ERROR: Module mpm_prework does not exist!
root@machine:/var/www/html# Sudo a2dismod mpm_event
Module mpm_event disabled.

この後、Apache php modのインストールは機能し(Sudo a2enmod php7.2)、コードは正しく実行されました。

0
Deleet