我有一台服务器,其中有apache,php和oracle,从php.ini和path完成了配置
但是当我在浏览器中运行脚本php时,总是出现错误。
ci_pconnect(): OCIEnvNlsCreate() failed.
然后当我在终端中运行时。
NB:在Apache环境中已完成
LD_LIBRARY_PATH=/apps/oracle/client/client_1/lib
ORACLE_HOME=/apps/oracle/client/client_1
ORACLE_BASE=/apps/oracle
请帮助我解决此问题
答案 0 :(得分:0)
您需要设置相同的环境变量,以便Apache可以访问它们,并确保Apache进程具有读取Oracle库的目录权限。
如何设置环境取决于您的操作系统和Apache版本。
例如,在RHEL 6或Oracle Linux 6上,您可以将它们添加到/etc/sysconfig/httpd
:
export LD_LIBRARY_PATH=/apps/oracle/client/client_1/lib
export ORACLE_HOME=/apps/oracle/client/client_1
export ORACLE_BASE=/apps/oracle
在RHEL 7或Oracle Linux 7上,您可以将它们添加到/etc/sysconfig/httpd
:
LD_LIBRARY_PATH=/apps/oracle/client/client_1/lib
ORACLE_HOME=/apps/oracle/client/client_1
ORACLE_BASE=/apps/oracle
http://www.oracle.com/technetwork/topics/php/underground-php-oracle-manual-098250.html的p77上还有其他提示