Using php-5.4. I’m trying to load ‘oci8.so’ to access the function oci_connect
. When in command line, I can access said function fine. But (after reloading, restarting, and reloading) php-fpm REFUSES to load the extension.
php -r 'print_r(get_loaded_extensions());
lists oci8
.
Array
(
[0] => Core
[1] => date
[2] => ereg
[3] => libxml
[4] => openssl
[5] => pcre
[6] => zlib
[7] => bz2
[8] => calendar
[9] => ctype
[10] => hash
[11] => filter
[12] => ftp
[13] => gettext
[14] => gmp
[15] => SPL
[16] => iconv
[17] => pcntl
[18] => readline
[19] => Reflection
[20] => session
[21] => standard
[22] => shmop
[23] => SimpleXML
[24] => sockets
[25] => exif
[26] => tokenizer
[27] => xml
[28] => curl
[29] => fileinfo
[30] => json
[31] => oci8
[32] => Phar
[33] => zip
[34] => mhash
)
However curl localhost/extensions.php
reads
Array
(
[0] => Core
[1] => date
[2] => ereg
[3] => libxml
[4] => openssl
[5] => pcre
[6] => zlib
[7] => bz2
[8] => calendar
[9] => ctype
[10] => hash
[11] => filter
[12] => ftp
[13] => gettext
[14] => gmp
[15] => SPL
[16] => iconv
[17] => Reflection
[18] => session
[19] => standard
[20] => shmop
[21] => SimpleXML
[22] => sockets
[23] => exif
[24] => tokenizer
[25] => xml
[26] => cgi-fcgi
[27] => curl
[28] => fileinfo
[29] => json
[30] => Phar
[31] => zip
[32] => mhash
// missing oci8
// and also missing 'pcntl'??
)
Both the fpm and cli are reading the exact same php.ini
. I have check and tested.
Nothing at all in any error logs.
2
Answers
Depending how you have installed PHP FPM but, On Debian CLI and FPM use different ini files try:
Mines is /etc/php/7.0/cli/php.ini
and
Mine is /etc/php/7.0/fpm/php.ini
Hope this helps.
Well not sure it is related but this happened to me on “Amazon Linux 2 AMI” so I guess could apply to “CentOS” too.
Long story short I installed composer and other php stuff.
So far so good.
And now to the web.
From phpinfo.php:
But the lists are different.
Why? Simply because after the yum installation I restarted httpd but I forgot to restart php-fpm, so php-cli got the new modules and php-fpm didn’t.
So, don’t forget to: