在部署Apache和PHP的服务器上,如果想为PHP添加新的模块的话(比如添加访问Oracle数据库的OCI8模块),重新编译php自然是一个办法,不过这样步骤繁琐且容易出错。另外一种方法是使用phpsize,它是用来准备PHP外挂模块编译环境的,接下来以在Linux平台上为PHP添加OCI8模块为例讲述整个过程。
进入到模块源代码目录
cd php/ext/oci8
运行phpsize
php/bin/phpize
重新配置
./configure --with-php-config=/home/admin/php/bin/php-config \
--with-oci8=shared,instantclient,/home/admin/oracle/lib
编译模块
make
安装模块
make install
拷贝编译好的模块库文件到PHP指定的目录
cp modules/oci8.so /home/admin/php/ext/
编辑PHP的配置文件
vi php.ini
extension_dir = "/home/admin/php/ext/"
extension=oci8.so
重启apache
service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
使用php -m命令可以查看php是否已经装载了oci8模块
php -m | grep oci
oci8
--EOF--
分享到:
相关推荐
【PHPize 使用详解】 在PHP开发中,`phpize`...无论是为了添加新的数据库驱动、图像处理库,还是优化性能,`phpize`都是一个不可或缺的工具。在实际开发中,务必确保你的环境配置正确,以便顺利进行扩展的编译和安装。
4. **更新php.ini**:找到PHP的配置文件(通常为`php.ini`),在文件末尾添加一行: ``` extension=redis.so ``` 这里的`redis.so`是编译后生成的扩展文件名,路径可能因系统不同而异,你可能需要替换为实际路径...
然后,需要使用 phpize 命令来生成 sodium 扩展模块的配置文件。使用 configure 命令来配置扩展模块的编译选项,例如指定 PHP 的配置文件路径。使用 make 命令来编译扩展模块,并使用 make install 命令来安装扩展...
PHP Beast是一个源码加密模块,使用这个模块可以把PHP源码加密并在此模块下运行。 为什么要用PHP-Beast? 有时候我们的代码会放到代理商上, 所以很有可能代码被盗取, 或者我们写了一个商业系统而且不希望...
添加配置:extension=beast.so3)重启服务器php-fpm4)加密PHP文件 使用模块提供的beast_encode_file($input_file, $output_file);来加密文件,$input_file为要加密的文件,$output_file为要输出的加密文件...
PHP的模块,也称为扩展,是用C语言编写的,它们可以嵌入到PHP解释器中,为PHP脚本添加新的功能。常见的PHP扩展包括MySQLi、PDO、GD库等,这些扩展极大地丰富了PHP的功能性。 2. **ZEND API** 在开发PHP模块时,你...
利用PHP自带的工具`ext_skel`来创建一个新的PHP扩展模块。例如,创建名为`security`的模块: ```bash tar -zxvf php-4.4.7.tar.gz cd php-4.4.7/ext/ ./ext_skel --extname=security ``` 这将在`ext`目录下生成一...
在PHP官方文档中,phpize的说明位于 "install.pecl.phpize" 一节,其核心作用在于为特定的PHP扩展模块建立编译环境,从而允许开发者或用户在已编译的PHP环境中加入新的扩展模块。 phpize的使用场景主要是在PHP源码...
本文介绍了如何在PHP中添加并配置Redis模块,以及如何使用该模块连接Redis数据库。通过上述步骤,PHP应用可以与Redis进行交互,利用Redis的高性能特性来处理数据存储和读取操作。需要注意的是,实际部署时,应该根据...
本教程将详细介绍如何在Linux系统下独立地添加PHP扩展模块mbstring。mbstring是一个用于处理多字节字符串的扩展,它提供了广泛的语言字符集支持,对于处理非ASCII编码的数据非常有用。 首先,确认你的环境已经安装...
Suhosin分为两部分:一个PHP内核模块和一个PHP脚本过滤器。内核模块在PHP解析请求之前工作,而脚本过滤器则在PHP代码执行时进行干预。这两部分一起提供诸如限制输入数据长度、保护敏感文件、防止缓冲区溢出和SQL注入...
在Linux和FreeBSD操作系统上,使用C语言开发PHP的.so扩展模块是一项常见的任务,这主要涉及到PHP的内部机制以及C语言编程。这篇文章将深入解析这一过程,并提供一个实际的示例来帮助理解。 首先,我们需要了解PHP...
比如编译 PHP 时忘记添加某扩展,后来想添加该扩展,即可以使用 phpize 动态的添加该扩展。 本文将介绍如何使用 phpize 给 Mac下的集成环境 MAMP 添加 PHP 的 pcntl 扩展。类 Unix 的环境都可以使用本方法安装,注意...
通过以上步骤,我们可以有效地解决使用`phpize`为PHP动态添加扩展时遇到的“Cannot find autoconf”错误,以及为PHP添加`php-curl`扩展时的问题。这些解决方案不仅有助于开发者快速解决问题,还能够提高系统的稳定性...
2. **配置扩展**:解压后,进入扩展的源码目录,使用`phpize`工具来配置环境,这会创建一个configure脚本来适应你的PHP安装。 3. **编译和安装**:执行`./configure`,然后`make`和`make install`。编译过程会生成...
接下来,使用PHP的`ext_skel`工具创建一个新的扩展模块,名为"my": ```bash $ ./ext_skel --extname=my ``` 进入刚创建的"my"目录并修改`config.m4`文件。找到包含`PHP_ARG_WITH(my, for my support, ...)`的行,...
1. **配置Web服务器**:将PHP解释器(如php-cgi.exe)添加到Web服务器的FastCGI配置中,或者将php.ini文件放置在正确的位置,让Web服务器能够识别。 2. **配置php.ini**:打开php.ini,根据服务器环境和项目需求...
本主题将深入探讨如何在PHP中扩展Application对象,结合给定的文件名,我们可以推测这是一个关于创建自定义PHP模块的实践案例。 首先,`my_module.c`文件是C语言编写的源代码,它是PHP扩展的基础。在PHP中,通过...
接着,添加curl扩展模块引用: ``` extension = curl.so ``` 这里,你可以选择不指定`extension_dir`,只需将`curl.so`复制到PHP默认的扩展目录`/usr/local/php5/lib/php/extensions/`,并在`php.ini`中添加`...