无法使用 Apache (FPM) 连接到 Oracle (oci8)。 PHP 7.x CLI 正常

Cannot connect to Oracle (oci8) with Apache (FPM). PHP 7.x CLI is OK

我制作了一个连接到 Oracle(oci8 扩展名)的 PHP 脚本。当我使用 CLI 模式 运行 时它运行良好 (# php test-oracle.php)

但是在浏览器 (Apache + PHP 7.x FPM) 中打开的相同脚本不起作用,我得到了这个错误:

oci_connect(): OCIEnvNlsCreate() failed. There is something wrong with your system - please check that LD_LIBRARY_PATH includes the directory with Oracle Instant Client libraries

我阅读并关注了我在论坛(也在 Whosebug 中)找到的许多东西,但对 apache 没有任何作用。

Ubuntu 16.04 LTS / Apache 2.4.33 / PHP 7.1.18

谢谢!

我找到了解决方案,所以我自己回答。

我的 Oracle Instant Client 版本有点太旧了 (11.2.x),我更新到一个新版本 (12.1.x) 并遵循我的标准指南(见下文)案件。现在它可以与 apache 一起工作,没有别的。

https://gist.github.com/hewerthomn/81eea2935051eb2500941a9309bca703

所以我猜是这个库有一些权限问题或类似的问题。

再次感谢您的帮助!