Skip to content
Advertisement

“PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php/20160303/http.so'” after downgraded PHP from 8.1 to 7.1

We have a requirement that needs to downgrade PHP from 8.1 to 7.1 in our Ubuntu 18 server.

sudo update-alternatives --set php /usr/bin/php7.1

After the downgrade, we’re seeing PHP Startup error everytime we check php -v

Below is the exact error text:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20160303/propro.so' - /usr/lib/php/20160303/propro.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20160303/raphf.so' - /usr/lib/php/20160303/raphf.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20160303/http.so' - /usr/lib/php/20160303/http.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP 7.1.33-47+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Jun 27 2022 08:15:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.33-47+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

The missing libraries are really not found in the said directory as I checked.

/usr/lib/php/20160303

We have tried reinstalling as suggested from other forum with same error.

sudo apt-get install --reinstall `dpkg -l | grep 'ii  php7.1' | awk '{ printf($2" "); next}'`

It works for them but not in ours.

I hope I can get help here. Thanks in advance.

By the way, I’m not a Linux and PHP developer. Just starting getting into it.

Advertisement

Answer

--reinstall will only reinstall the things that are installed, but it looks like you actually removed a number of modules. The propro, raphf, and http modules are not standard and are not installed by default. If you don’t actually need/use them, you can just disable them so that they don’t try to load:

phpdismod propro raphf http

However, if your app requires these modules, you’ll need to explicitly add them:

apt install php7.1-propro php7.1-raphf php7.1-http
3 People found this is helpful
Advertisement