web-dev-qa-db-ja.com

Ubuntu 14.04のアップグレードでApache2が壊れる

Ubuntu 14.04にアップグレードしたところ、Apache2が起動しなくなりました。次のエラーが表示されます。

root@dennisHome:~# /etc/init.d/Apache2 restart
* Restarting web server Apache2
...fail!
* The Apache2 configtest failed.

構成テストの出力は次のとおりです。

Apache2: Syntax error on line 244 of /etc/Apache2/Apache2.conf: 
Syntax error on line 1 of /etc/Apache2/mods-enabled/authz_default.load: Cannot load       /usr/lib/Apache2/modules/mod_authz_default.so into server: 
/usr/lib/Apache2/modules/mod_authz_default.so: cannot open shared object file: No such file or directory
Action 'configtest' failed.
The Apache error log may have more information

Mod_authz_default.soはもうないようですが、この問題を修正するにはどうすればよいですか?

12
Dennis Kerrisk

Ubuntu 14.04への移行では、Apache 2.4(おそらく2.2から)にも移行しています。これはささいな変更ではありません。 ここ に必要な調整のリストを見つけることができます。やるべきことがいくつかあります。特に、ページは次のように述べています:

これらのモジュールは削除されました:mod_authn_default、mod_authz_default、mod_mem_cache。

そのため、上記のエラーメッセージが表示されます。 Apache.confの244の問題のある行をコメントアウトして、システムがこの方法で取得できるかどうかを確認してみてください(ただし、疑問です)。

14
MariusMatutiae

モジュールがmods-enabledディレクトリから自動的に読み込まれている場合、問題のある行はconfファイルのこのセクションにある可能性があります。

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

この場合、modsが有効なディレクトリ(デフォルトでは/etc/Apache2/mods-enabled)に移動し、authz_default.loadファイルのシンボリックリンクを削除する必要があります。

これは、mods-enabledのシンボリックリンクが、Apache 2.4には存在しないmods-availableのファイルを指しているためです。

1
rooby