php oci8 扩展安装,某某小站-正确安装php_oci8扩展的方法

以windows为例

下载apache和php的压缩包,解压在硬盘目录,配置apache+php环境,能够解析php文件。

apachelounge是官方推荐的下载地址,已经是编译好的,根据自己的电脑是32位的或者64位的,选择正确的版本,需要注意的是选择vc11或者vc14,因此还需要下载vc++的环境包。

我下载的php版本是PHP 5.6 (5.6.28),VC11 x64 Thread Safe,

提前在电脑上安装vc++2012,下载Visual C++ Redistributable for Visual Studio 2012 Update 4(http://www.microsoft.com/zh-CN/download/details.aspx?id=30679)安装,否则在运行apache的时候会弹出错误警告,内容时**.dll无法加载。apache作为web服务器时要选择Thread Safe;IIS则选择Non Thread Safe

接下来做两件事情,把apache和php分别解压,在apahce目录下的bin目录,在cmd界面运行httpd.exe -k install来安装apache2.4的服务,然后在conf目录,增加加载php的配置。启动apache,支持php。

安装oci8扩展

首先安装oracle instantclient。

在oracle官网上下载oracle的instant client(http://www.oracle.com/technetwork/topics/winx64soft-089540.html ),选择自己对应的版本(比如11.2.0.1.0),下载instantclient-basic-win-x86-64-11.2.0.1.0.zip和instantclient-sdk-win-x86-64-11.2.0.1.0.zip这两个压缩包。将basic压缩包解压,比如目录是c:/instantclient,SDK压缩包解压出来,路径为c:/instantclient/sdk。

将client路径和sdk路径加入到系统path环境变量中。这个非常关键,要不然后面会遇到“php_oci_11g.dll不是标准的win32应用程序”这样的错误

还需要oci8的扩展文件,可以在pecl.php.net(http://pecl.php.net/package/oci8/2.0.12/windows)下载dll文件,php5.6可以选择oci8 2.0.12版本的,下载的压缩包内有一个php_oci8_11g.dll文件,将这个文件保存到php目录下的ext目录中,然后在php.ini中增加extension=php_oci8_11g.dll,还要记得修改extension_dir的路径。

安装上面的步骤做下来,就可以成功的安装oci8扩展,在phpinfo里会看到如下内容:

3a907c22e425671b50175333ffdfc8a6.png

linux环境安装oci8扩展

安装oracle instant client,配置环境变量ORACLE_HOME,LD_LIBRARY_PATH,(比如我的电脑上ORACLE_HOME是/usr/lib/oracle/11.2/client64,LD_LIBRARY_PATH是/usr/lib/oracle/11.2/client64/lib)

linux环境下需要自己下载oci的源代码自己编译,编译参数是./configure --with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client64

然后make,make install,完成之后会在/usr/lib64/php/modules目录下生成oci8.so文件,同样在php.ini中增加extension=oci8.so,然后重启apache,发现并没有加载oci8扩展。

查看apache的错误日志,发现是被selinux拦截了。因此执行setenforce 0,然后重新启动apache,查看phpinfo(),这个时候就发现oci8扩展已经成功加载了。

以上过程是根据记忆来写的,如果如果参照做的时候不能成功,可以在底下留言。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值