Linux 编译安装 php 扩展包 curl

php源码目录:/root/php

php编译目录:/usr/local/webserver/php/

curl源码目录:/root/curl

1.curl,主要用于发送http请求,是php的一个扩展包。

2.安装过程:

(1)curl下载:http://curl.haxx.se/download.html

(2)具体安装过程:

  • 解压:tar -zxvf curl.tar.gz
  • cd  /(php源码目录,不是php编译目录)/ext/curl
  • 运行phpize: /(php编译目录)/bin/phpize
  • ./configure --with-php-config=/(php编译目录)/bin/php-config  --with-curl=/(curl源码目录)
  • make && make install
  • 修改php.ini,增加:extension=curl.so(如果没有安装过其他php扩展,则需要同时配置extension_dir="/(php编译后目录)/lib/php/extensions/no-debug-non-zts-20121212/",上一个步骤生成.so文件的时候,会输出extension_dir目录)

(3)检验是否安装成功:

  • /(php编译后目录)/bin/php -m | grep curl ——正常打印curl,则表示安装成功(php -m会打印出已安装的扩展模块)

3.踩过的坑:

(1)直接在curl的源码目录最上层,运行phpize,提示如下错误:

Cannot find config.m4.

Make sure that you run ‘/home/zhuyx/local/php-5.5.3/bin/phpize‘ in the top level source directory of the module

原因:

  phpize扩展安装,源包需要有config.m4这个配置文件;当前扩展的源码包不包含(memcache的就包含)。

解决方法:

(1)进入php源码包的 ext/curl 下面运行phpize,再进行安装

(2)./configure --with-php-config=/php编译后目录/bin/php-config  --with-curl=curl源码目录

问题扩展:

  安装其他的php扩展的时候,遇到类似问题,都可以采取上述解决方案。

(2)关于php.ini

  楼主一开始修改的是 php编译后目录/lib/php.ini 这个文件,修改之后新增模块并不生效。后来才知道,前面这个是默认(编译时候不指定)的扩展配置目录,如果编译的时候指定了php.ini的目录,以后都需要修改指定目录下的php.ini,例如楼主的是 php编译后目录/php.ini 。

(3)调用curl()的php脚本,命令行可以运行,浏览器访问提示如下错误:

  Fatal Error:Call to undefined function curl()

原因:

  楼主的服务器是nginx,安装了curl扩展后,没有重启php-fpm导致。

解决方法:

  重启php-fpm.

  ps aux | grep php-fpm (找到master进程)

  kill -SIGINT master进程

  进入php-5.5.3/sbin,执行  ./php-fpm(启动)

时间: 2024-10-08 19:57:35

Linux 编译安装 php 扩展包 curl的相关文章

Linux编译安装源码包的流程

本文参考:http://www.linuxfromscratch.org/lfs/view/7.10-rc1/chapter05/generalinstructions.html 流程: 1.  下载并解压源码包2.  运行:configure3.  编译:make4.  安装:make install 编译时需要注意一个原则:不要在解压的包中直接执行./configure.make.make install等命令,需要在源码目录下另外新建一个目录,在新建的目录中执行以上命令. 例子:这里以源码

ArcGIS Python 安装其它扩展包(Windows与Linux)

ArcGIS Python 安装其它扩展包(Windows与Linux) 下载 ? https://pypi.org/project/setuptools/#files ? setuptools-40.6.2.zip ? https://pypi.org/project/pip/#files ? pip-18.1.tar.gz ? 解压 ? ? 安装 setuptools ArcGIS Desktop(Windows) ? cd D:\software\setuptools-40.6.2 ? C

【转】如何编译安装PHP扩展

本文参考 一开始安装PHP的时候,我们并不知道需要哪些扩展,所以只有等到我们真正用到的时候才想办法去安装. 安装PHP扩展最简单的办法就是 sudo apt-get install php5-xxx 但有的时候并非我们所愿,源里面并没有我们需要的扩展,这时候就需要我们下载源码自己编译安装了. 这篇文章中我将介绍在本地Linux平台下编译安装PHP扩展的方法. 现在网站根目录下创建 index.php 打印基本的配置信息,以验证我们是否安装成功. 配置编译环境 我们需要安装一些编译必须的库,还有 

linux 下安装php扩展

linux下安装php扩展 步骤: 1.在扩展解压包目录执行 phpize 2.执行 ./configure --with-php-config=/usr/local/php/bin/php-config 3.编译 make&&make install (安装完成后在php安装目录下的扩展目录就会有相应的.so扩展文件.) 4.配置支持php 修改php.ini 在最后一行添加以下内容  extension= 扩展文件名.so 5.重启服务  

linux下安装php扩展redis缓存

下载phpredis安装包 wget https://github.com/nicolasff/phpredis/tarball/master 在下载目录解压phpredis.tar.gz tar zxvf phpredis.tar.gz cd phpredis 使用php的phpize编译安装包(需要进入到解压出来的目录里面) /usr/local/php/bin/phpize 设置配置 ./configure --with-php-config=/usr/local/php/bin/php-

Linux编译安装Apache+PHP

Linux编译安装Apache+PHP 来自:自学it网,http://www.zixue.it/. 1]编译安装Apache+PHP 1.安装程序依赖库和开发环境   为了省事把所需要的库文件全都安装上,可以使用rpm包安装,也可以用yum命令安装, yum -y install gcc gcc-c++ autoconf automake make libjpeg libjpeg-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-d

Linux编译安装Qt 5.4.1

转载请注明文章:Linux编译安装Qt 5.4.1 出处:多客博图 很久不写文章了,过程很简单,但是操作很多,简单说吧. 前言: 操作系统CentOS 6.6,64位的. 1.安装gcc 4.8.4,或者4.9.2,越高版本越好咯,编译安装到/usr/local/下面,这样无需设置可执行文件路径了,然后卸载自带的gcc等,卸载所有依赖,如果不行就--nodeps方式卸载: 2.安装gdb 7.8,有新的gcc 4.8.4这种就可以了,然后强行卸载系统自带的gdb, rpm -e gdb.xxx

linux编译安装nginx

linux下编译安装nginx,从nginx官网下载nginx原代码,解压到某个目录,执行如下命令 # ./configure --prefix=/usr/local/nginx 配置nginx编译生成的目录,nginx的shell脚本将存储在/user/local/nginx/sbin目录,配置文件将存储在/user/local/nginx/conf目录下 nginx支持正则匹配路径,依赖pcre包,编译之前请先安装此包.如果要使用https,还需要openssl.如果要使用gzip,需要zl

linux编译安装LAMP

Linux安装Apache+MySQL+PHP 安装部分依赖 安装apr(可选) # tar -xf apr-1.5.0.tar.bz2 # cd apr-1.5.0 #./configure --prefix=/usr/local/apr //指定其安装位置 # make && make install 安装apr-util # tar -xf apr-util-1.5.3.tar.bz2 # cd apr-util-1.5.3 # ./configure --prefix=/usr/l