PHP-FPM error: Zend_Controller_Request_Http not found

Hi,
I’am migrating my icingaweb2 CentoS-7 container to RHEL9 container. Using php-fpm 8.0 + nginx i get the following error from icingaWeb server:

**Fatal error** : Uncaught Error: Class "Zend_Controller_Request_Http" not found in /usr/share/icingaweb2/library/Icinga/Web/Request.php:14 Stack trace: #0 /usr/share/icingaweb2/library/Icinga/Application/ClassLoader.php(275): require() #1 /usr/share/icingaweb2/library/Icinga/Application/EmbeddedWeb.php(89): Icinga\Application\ClassLoader->loadClass() #2 /usr/share/icingaweb2/library/Icinga/Application/Web.php(92): Icinga\Application\EmbeddedWeb->setupRequest() #3 /usr/share/icingaweb2/library/Icinga/Application/ApplicationBootstrap.php(388): Icinga\Application\Web->bootstrap() #4 /usr/share/icingaweb2/library/Icinga/Application/webrouter.php(105): Icinga\Application\ApplicationBootstrap::start() #5 /usr/share/icingaweb2/public/index.php(4): require_once('...') #6 {main} thrown in **/usr/share/icingaweb2/library/Icinga/Web/Request.php** on line **14**
  • Icinga Web 2 version : 2.12.5
  • Web browser used : Any (firefox, chrome, ..)
  • PHP version used (php --version) : 8.0.30
  • Server operating system and version: Alma-9.4 (rhel9)

I installed “Zend Framework 1” package as recommended on the web and properly configured the include_path for PHP to load library from /usr/share/php/Zend

Nothing helps.

Any idea or similar issue observed and fixed?
Thank you in advance
Frank

Where does this recommendation come from?

Which packages did you use to install icingaweb2 in the first way?

1 Like

Here is the list of PHP packages installed from my Dockerfile:

php php-json php-ldap php-pgsql php-mysqlnd php-intl php-gd php-xml php-mbstring php-zip php-fpm php-cli php-common php-curl php-opcache

I found reference to “Zend Framework 1” somewhere in the web when browsing for similar error but not sure where exaclty.

how did you install icingaweb2? which packages did you use?

I created my own RPM icingaweb2 package from:https://github.com/Icinga/icingaweb2/archive/refs/tags/v2.12.5.tar.gz

Then i installed this RPM package to my rhel9.4 container and adding all PHP packages listed in the previous answer.

Finally i also added the following package to my Dockerfile in order to fix my problem (but without success):

# Installer Zend Framework 1 (Required by Icingaweb >2.12.1)
RUN curl -sSL https://packages.zendframework.com/releases/ZendFramework-1.12.20/ZendFramework-1.12.20-minimal.tar.gz | tar -xz -C /usr/share/php/ && \
    mv /usr/share/php/ZendFramework-1.12.20-minimal/library/* /usr/share/php

why don’t you use a debian container?

debian trixie is fully supported with the latest packages freely availiable form icinga.

or you get a subscription or find the packages somewhere else.

apart from that advice I can’t contribute much more to this issue

Thank you for your advice!
Regarding Debian solution, by ‘freely’, do you mean i can find icinga2/web2 Debian Dockerfile somewhere?
Please could you give entry-point for that?

For sure, look here: GitHub - Icinga/docker-icingaweb2

1 Like