Tänään päivitin yhden palvelimen käyttöjärjestelmän uusimpaan pitkän tuen jakeluversioon. Tässä tapauksessa Ubuntu 20.04.1 LTS.
Päivityksen jälkeen Nginx suostui näyttämään kyllä yhden sivuston staattiset html-sivut nätisti, mutta toisen sivuston PHP-pohjainen "flat file CMS" Grav ei toiminut, ja tämä ilmeni HTTP-virhenumerona 502. Selvittelyn ja verkkohakukimaran jälkeen tajusin tarkistaa Nginxin asetuksista seuraavat asiat:

  • Onko Nginxin virhelokissa jotain vihjeitä?
  • Mikä PHP:n versio on asennettu ja oliko tässä muutoksia järjestelmän jakeluversiota päivittäessä?
  • Toimiiko PHP? Toimiiko php-fpm (tässä tapauksessa php7.4-fpm)?
  • Mitä /etc/nginx/sites-enabled pitää sisällään?

Nginxin virhelogissa oli kyllä jotain PHP:hen liittyvää, mutten suhteellisen noviisina saanut siitä suoraan irti tietoa, josta olisi vian juurisyy käynyt ilmi. PHP-versio oli muuttunut päivityksen yhteydessä 7.2 -> 7.4
PHP-fpm -palvelu oli käynnissä. (systemctl on ystäväsi)
Lopulta sitten selvisi, miksei Grav toiminut, ja miksi Nginx tarjosi 502 -virhekoodia sivustoa pyytäessä. Asetustiedostossa /etc/nginx/sites-enabled -hakemistossa oli rivit:

## Begin - PHP
    location ~ \.php$ {

        # Choose either a socket or TCP/IP address
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;

        # fastcgi_pass 127.0.0.1:9000;

Näistä yksi rivi piti muuttaa muotoon: fastcgi_pass unix:/run/php/php7.4-fpm.sock;

Virhe oli php:n versionumero. Tämän jälkeen käynnistin nginx-palvelun uudelleen: sudo systemctl restart nginx.service
Kaikki toimi taas kuten pitikin, minkä innoittamana kirjoitin huvin ja urheilun vuoksi miten ja mitä korjasin. :)