通过phpize添加PHP扩展openssl、mysql

phpize

phpize 命令是用来准备 PHP 扩展库的编译环境的。下面例子中,扩展库的源程序位于 extname 目录中:


1

2

3

4

5


$ cd extname

$ phpize

$ ./configure

$ make

# make install

成功的安装将创建 extname.so 并放置于 PHP 的扩展库目录中。需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此扩展库。

如果系统中没有 phpize 命令并且使用了预编译的包(例如 RPM),那要安装 PHP 包相应的开发版本,此版本通常包含了 phpize 命令以及相应的用于编译 PHP 及其扩展库的头文件。

使用 phpize --help 命令可以显示此命令用法。

原文:http://php.net/manual/zh/install.pecl.phpize.php

添加openssl扩展


1

2

3

4

5

6

7

8

9


# cd /data/pkg/php-5.5.15/ext/openssl

# /usr/local/webserver/php/bin/phpize

Cannot find config.m4.

Make sure that you run ‘/usr/local/webserver/php/bin/phpize‘ in the top level source directory of the module

# mv config0.m4 config.m4

# ./configure --with-openssl --with-php-config=/usr/local/webserver/php/bin/php-config

# make && make install

编译完成后将生成的openssl.so添加到php.ini中,并重启php-fpm


1

2

3

4

5

6

7

8


# vi /usr/local/webserver/php/lib/php.ini

# ps aux | grep php

root     19714  0.0  0.5  21912  2652 ?        Ss   09:20   0:00 php-fpm: master process (/usr/local/webserver/php/etc/php-fpm.conf)

nobody   19715  0.0  0.8  21912  4144 ?        S    09:20   0:00 php-fpm: pool www                   

nobody   19716  0.0  0.8  22232  4308 ?        S    09:20   0:00 php-fpm: pool www                   

root     22464  0.0  0.1   4028   676 pts/0    R+   09:37   0:00 grep php

# kill -USR2 19714

重启完成后即可调用上篇rsa中的create方法生成公钥、私钥对。


1

print_r(RsaUtil::create());

添加mysql扩展


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15


# cd /data/pkg/php-5.5.15/ext/mysql

# /usr/local/webserver/php/bin/phpize

Configuring for:

PHP Api Version:         20121113

Zend Module Api No:      20121212

Zend Extension Api No:   220121212

# ./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-mysql=/usr/local/webserver/mysql/

# make && make install

Build complete.

Don‘t forget to run ‘make test‘.

Installing shared extensions:     /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20121212/

# vi /usr/local/webserver/php/lib/php.ini

mysql.so会自动添加extension_dir所指目录中,修改php.ini添加 extension=mysql.so 重启php


1

2

3

4

5

6


# ps aux | grep php

root      1422  0.0  0.4  22020  2404 ?        Ss   11:28   0:00 php-fpm: master process (/usr/local/webserver/php/etc/php-fpm.conf)

nobody    1423  0.0  0.4  22020  2144 ?        S    11:28   0:00 php-fpm: pool www                   

nobody    1424  0.0  0.4  22020  2144 ?        S    11:28   0:00 php-fpm: pool www                   

root      4767  0.0  0.1   4028   680 pts/0    R+   11:39   0:00 grep php

# kill -USR2 1422

查看PHPINFO是否已添加成功。

--EOF--

时间: 2024-08-07 12:32:45

通过phpize添加PHP扩展openssl、mysql的相关文章

Ubuntu 17.10 用 apt 搭建 lamp 环境、安装 phpmyadmin、redis 及扩展、mysql 扩展、开启错误提示、配置虚拟主机

最终环境: Ubuntu17.10.Apache2.4.27.MySQL5.7.20.PHP7.1 1. 安装 apache 官方源有,直接安装: sudo apt-get install apache2 2. 安装 mysql 官方源有,直接安装: sudo apt-get install mysql-server 安装期间会提示设置 MySQL administrator 的密码 ========================================================

在Linux环境下给php添加mbstring扩展

1,今天在开发项目的时候使用了一个php函数(mb_strcut),运行代码时候提示报错"call to undefind function mb_strcut",首先检查下函数名没有写错,难道是php.ini中没有开启扩展,后来去phpinfo看了确实没有加载mb_strcut,后台得知这个扩展在官方由mbstring构建 2,去php官方pecl首页搜索竟然搜索不到,MDZZ,what the hell,由于php安装包中带有所有的扩展,所以楼主用wget下载一个php5.6.24

linux和windows下添加php扩展方法

本次编译只是单独编译php的扩展库,然后将编译好的php扩展库加到现在运行的php中,不对现在运行的php重新编译,所以对现在运行的php没有任何影响. 假如原先编译的php目录在/usr/local/php目录下;apache在/usr/local/apache2目录下:php源代码在/usr/local/src/php-5.2.14目录下.如果实际目录与假定的目录不一致,则在下面的命令中做调整. 1. 找到当前运行的php版本的源代码目录,如 php-5.2.14.进入curl扩展库目录.$

一键安装lnmp后添加php扩展问题

       因为要使用php的pcntl扩展多进程函数,所以需要添加php的pcntl的函数.但是本机linux环境使用的是lnmp.org的一键安装包,查看ext里面的文件后,没有发现有pcntl的文件包. 解决办法:        在网上下载对应版本的php,然后在linux下解压,解压后找到pcntl的文件包,然后将其mv到本机linux的文件包中.         依照方法:         1,cd 到php的ext/pcntl目录         2,phpize        

MAMP 环境下为 php 添加 pcntl 扩展

pcntl 介绍 pcntl 扩展可以支持 PHP 的多线程操作.(非Unix类系统不支持此模块) phpize 介绍 phpize 可以用来给 PHP 动态的添加扩展.比如编译 PHP 时忘记添加某扩展,后来想添加该扩展,即可以使用 phpize 动态的添加该扩展. 本文将介绍如何使用 phpize 给 Mac下的集成环境 MAMP 添加 PHP 的 pcntl 扩展.类 Unix 的环境都可以使用本方法安装,注意灵活变通. 安装: 下面演示的是给 MAMP的PHP 5.6.10版本添加 pc

PHP扩展PDO MySQL之PDOStatement::bindParam vs bindValue

PHP扩展PDO MySQL之PDOStatement::bindParam vs bindValue技术 maybe yes 发表于2015-11-16 13:27 原文链接 : http://blog.lmlphp.com/archives/155/The_difference_of_PDOStatement_bindParam_and_bindValue_of_PHP_extension_PDO_MySQL  来自 : LMLPHP后院 前些日子将 LBlog 在线体验站点 http://

laravel 5.1 添加第三方扩展库

laravel 5.1 添加第三方扩展库 时间:2015-09-07 19:20:34      阅读:1654      评论:0      收藏:0      [点我收藏+] 步骤一:确定你要放第三方库的目录,假设:app/libs,并在该目录下放置类文件common.php. 步骤二:找到根目录下的composer.json文件并打开,找到autoload-dev参数,添加"app/libs/common.php".如图: common.php代码: 步骤三:然后执行命令: ph

Windows下 "redis安装"和"PHP中添加redis扩展"

一. 安装redis及启用服务1. 下载redis包 链接:http://pan.baidu.com/s/1sjKfZOD 密码:oy5c 2 .解压以后,可以看到以下文件 3.双击运行服务端redis-server.exe,开启服务,如图: 4.双击运行客户端redis-cli.exe,可见服务端有连接提示: 5.然后,就可以使用了: =======================================PHP中添加redis扩展============================

添加curl的openssl的功能,实现https的正确访问

公司开发部遇到一个难题,服务器环境的curl的功能参数无法支持ssl,那么很多功能将会无法实现.那么好吧,这个问题只好抛到运维这边了,我也是个新手,下边的见解纯属个人分析(如有问题,欢迎讨论): 首先系统:Centos 6.5 x86_64, 服务器版本的默认安装路径:curl在/usr下,openssl在/usr下  (当然,版本都是挺低的,yum更新后,版本还是很低,而且理所当然的,yum安装是无法带参数的,那么很显然,更新后curl还是无法支持openssl) 安装所有常用的开发包yum