I keep getting this error:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/http.so' - /usr/lib64/php/modules/http.so: undefined symbol: php_persistent_handle_abandon in Unknown on line 0
PHP Fatal error: Class 'HttpResponse' not found in /var/www/api/init.php on line 4
I've reinstalled http through pecl a few times, even tried installing it from the tar.gz. I'm running an EC2 instance.
I HAVE put extension=http.so in my php.ini.
You probably got version 2 of pecl_http, and it has some new requirements. See the installation instructions. For me these lines worked:
extension=raphf.so
extension=propro.so
extension=http.so
Edit: Order matters, so first try the same order as I used.
I also made sure http.so is loaded after json.so and the other prerequisites.
I installed pecl_http successfully with following steps on Debian
- execute
sudo pecl install raphf propro pecl_http
- create /etc/php5/mods-available/zhttp.ini
extension=raphf.so
extension=propro.so
extension=http.so
- execute
sudo php5enmod zhttp
- restart your web server
As mine was using /etc/php/conf.d/ for the additional .ini files
I just prefixed them with numbers
mv raphf.ini 1raphf.ini
mv propro.ini 2propro.ini
mv http.ini 3http.ini
# php --ini
Configuration File (php.ini) Path: /etc/php
Loaded Configuration File: /etc/php/php.ini
Scan for additional .ini files in: /etc/php/conf.d
Additional .ini files parsed: /etc/php/conf.d/1raphf.ini,
/etc/php/conf.d/2propro.ini,
/etc/php/conf.d/3http.ini,
/etc/php/conf.d/imagick.ini