WebUI displayed as text

Hi,

I am having issues with the WebUI displayed as text (and unusable) after upgrading from version 1.45 to version 1.56. I upgraded by steps, one version at a time and it stopped working after 1.53. At each step I ran ./daily.sh and ./validate.php.

Current output of ./validate.php is:

Component Version
LibreNMS 1.56
DB Schema 2019_09_05_153524_create_notifications_attribs_index (141)
PHP 7.2.9
MySQL 5.5.60-MariaDB
RRDTool 1.4.8
SNMP NET-SNMP 5.7.2

====================================

[OK] Composer Version: 1.9.0
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database schema correct

I had a set of errors at version 1.53 in nginx error.log like:
PHP message: PHP Warning: include(): Failed opening ‘/opt/librenms/vendor/composer/…/symfony/http-kernel/HttpKernelInterface.php’ for inclusion (include_path=’.:/usr/share/pear:/usr/share/php’) in /opt/librenms/vendor/composer/ClassLoader.php on line 444
PHP message: PHP Fatal error: Interface ‘Symfony\Component\HttpKernel\HttpKernelInterface’ not found in /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Application.php on line 25" while reading response header from upstream, client: 10.0.1.100, server: librenms.example.com, request: “POST /ajax/dash/worldmap HTTP/1.0”, upstream: “fastcgi://unix:/var/run/php-fpm/php7.1-fpm.sock:”, host: “supervision”, referrer: “https://supervision/overview/dashboard=23”

I checked the base_url as well as the servername in nginx.

Can anyone help me figure out what is going wrong?

Thanks,
Gilles

Not sure if the version mismatch between php-fpm and php can make any issues, but maybe try to update your php-fpm to the matching version with your php.

1 Like

Yeah you are missing a dependency

I have updated all php related packages with yum.

./validate.php now gives:

Component Version
LibreNMS 1.56
DB Schema 2019_09_05_153524_create_notifications_attribs_index (141)
PHP 7.2.22
MySQL 5.5.60-MariaDB
RRDTool 1.4.8
SNMP NET-SNMP 5.7.2

====================================

[OK] Composer Version: 1.9.0
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database schema correct

Is there any way to figure out what dependency is missing?

I forgot to mention that I no longer have the PHP errors in nginx error.log (no errors any more), but the WebUI still displays as text.

All right, @Elias I figured out what you meant by the mismatch between php and php-fpm. I updated the php-fpm config, restarted the php-fpm service, updated the nginx configuration to use the updated php-fpm socket, and restarted the nginx service.

WebUI is still displaying as text.

Any ideas how I can debug this problem?

I would run through the install docs at docs.librenms.org see if you have a missing package.

@Kevin_Krumm, I did go through the install docs again and checked that everything is ok.

Could such an issue be related to the https certificate?
There is an http->https redirection hard coded somewhere and Chrome is displaying that the web site is not secure.

By default there is no https, that you have to setup on your webserver side, along with any possible redirects. I’m not in prod yet and use libre fully on http.

Btw try to use your browser dev-console to see any possible errors. (press F12 and reload the page)

I nailed this problem. It was indeed related the the certificate and an nginx proxy performing the http to https redirection without adding the appropriate header flags.