Apache PHP 8 不断被禁用

Apache PHP 8 不断被禁用

我有一台运行 Apache2 版本 2.4.41 的 Ubuntu Linux 服务器(20.04)

$ apachectl -v
Server version: Apache/2.4.41 (Ubuntu)
Server built:   2024-04-10T17:46:26

启用 PHP8 后/etc/apache2/mods-enabled

$ ls -l /etc/apache2/mods-enabled/php8*
lrwxrwxrwx 1 root root 39 Apr 29 14:17 /etc/apache2/mods-enabled/php8.0.conf -> /etc/apache2/mods-available/php8.0.conf
lrwxrwxrwx 1 root root 39 Apr 29 14:17 /etc/apache2/mods-enabled/php8.0.load -> /etc/apache2/mods-available/php8.0.load

它已经这样运行了几个月,但现在不知何故 PHP 总是被禁用。当我的 PHP 应用程序突然停止工作时,我才意识到这一点,当我查看时,/etc/apache2/mods-enabled我发现 PHP8 的两个条目不见了。如果我重新启用它,它会运行几天,然后同样的事情再次发生。

我在日志中看不到任何表明它已被禁用的内容,并且我(我希望)是唯一具有该机器 root 访问权限的人。

有人知道我该如何查明是什么禁用了此功能以及原因吗?我可以启用某种日志记录来获取更多信息吗?

答案1

就我个人而言,我会设置审计:安装auditd软件包来跟踪系统变化:

sudo apt-get install auditd

配置审计来监控/etc/apache2/mods-enabled目录:

sudo auditctl -w /etc/apache2/mods-enabled/ -p wx -k apache_mods

这将记录目录的所有更改mods-enabled。您可以使用以下命令检查审计日志:

sudo ausearch -k apache_mods

还要验证 PHP 安装;仔细检查 PHP 是否正确安装和配置:

sudo php -v
sudo ls /etc/apache2/mods-available/php8.0.*

如果您发现任何问题,请分享结果。

相关内容