所以,我在 Ubuntu 16.04 服务器上安装了 Icingaweb2,但是当我输入时,IP/icingaweb2
我只收到消息
<?php
/*! Icinga Web 2 | (c) 2014 Icinga Development Team | GPLv2+ */
require_once '/usr/share/php/Icinga/Application/webrouter.php';
而不是 Icingaweb2 接口。
我忘了配置什么吗?请帮忙。
所以,我在 Ubuntu 16.04 服务器上安装了 Icingaweb2,但是当我输入时,IP/icingaweb2
我只收到消息
<?php
/*! Icinga Web 2 | (c) 2014 Icinga Development Team | GPLv2+ */
require_once '/usr/share/php/Icinga/Application/webrouter.php';
而不是 Icingaweb2 接口。
我忘了配置什么吗?请帮忙。
这里的根本问题是 Ubuntu 16.04 在加载 PHP 模块时表现不同。因此,这些软件包需要仅适用于 16.04 的特定修复
这里有一个德语讨论,它变成了一项研究,随着最新的 Ubuntu 版本发生了变化。一件事是 - 他们更喜欢 mpm_event 而不是 mpm_prefork 作为一个模块。问题是 - PHP apache 模块仅针对 mpm_prefork 支持进行编译,但在与 mpm_event 一起使用时会严重失败(也请参阅此线程)。
虽然 Ubuntu 软件包可能会满足依赖性问题,但它不能强制更改 mpm* 模块。因此,现在我们为 Icinga Web 2 提供了一个未解决的问题,以便更新文档以使其在 Ubuntu 16.04 上运行。在此完成之前,请检查此解决方案。
apt-get install libapache2-mod-php7.0 php7.0-dom php7.0-gd
vim /etc/php/7.0/apache2/php.ini
<set timezone>
#set the correct worker
a2dismod mpm_event
a2enmod mpm_prefork
systemctl restart apache2
目前未编译 PHP 模块以支持 mpm_event 模块。PHP 7.0 本身可能是线程安全的,但在 apache 网络服务器的上下文中运行的其他任何东西都不是。不知道为什么 Ubuntu 选择默认不设置 mpm_prefork - 升级非常痛苦,我找不到任何好的更新日志。
这是一个PHP问题,需要升级到7.0。
运行这个:
apt-get -y install php7.0 libapache2-mod-php7.0