zoukankan      html  css  js  c++  java
  • liunx 配置 php curl 拓展库的方法

    今天配置 php 的curl拓展。第一次配置,还不会,我就百度很多方法,但是发现网上抄袭太严重了,一个方法被转载了好多个网站,关键的是还写的不对。经历了长达4个多小时的折磨 终于配置成功。方法记录如下

    首先是先下载 curl 拓展库

    wget https://curl.haxx.se/download/curl-7.53.1.tar.gz&&tar -zxf curl-7.53.1.tar.gz

    ./configure --prefix=/usr/local/curl(进入到解压的目录里面)

    make & make install

    上面步骤是安装好 curl拓展。

    然后测试 curl 这个命令能用不, curl http://www.5284.net  我的机器就报了 

    curl: (2) Failed Initialization

    别怕 ,在装一遍,在加个参数 confure的时候加上  ./configure --prefix=/usr/local/curl --disable-shared

    然后就可以用了。

    继续往下走

    编译PHP

    这一步我都被逼疯了,网上的方法好多混淆的,还说的不清楚。

    找到PHP的源码路径

    ---------------------------------

    root目录下cd lnmp1.3-full

    cd src  ls php*

    cp php-7.0.7.tar.gz /var/tmp/

    cd /var/tmp/

    tar -xvf php-7.0.7.tar.gz

     cd php-7.0.7

    ------------------------------------

    首先确定 你的php安装目录 例如我的  /usr/local/php/

    然后找到你的PHP源代码目录。是源代码目录哦。例如我的版本是5.4  var/tmp/php-5.4.45/

    进入php源代码目录后有一个 ext目录 进入  /var/tmp/php-5.4.45/ext/curl/ 最后进入到curl目录下

    接下来就是 调用phpize程序生成编绎配置文件 命名  /usr/local/php/bin/phpize

    [说明]phpize 

    (phpize是用来扩展php模块的,通过phpize可以建立php的外挂模块,无论是编绎生成的php,还是通过yum ,apt-get,brew自动安装的php,都会生成一个phpize程序,

    phpize是编绎安装时候生成好的,文件中记录了当时安装的一些信息,并不能从其他地方拿个phpize来使用,在使用时需要找到自己对应php版本的phpize,当php编译完成后,php安装目录下的bin目录下会有phpize这个脚本文件。所以是去安装好的php安装目录去找)

     生成configure配置文件时,使用--with-php-config=/usr/local/php534/bin/php-config来指定phpize要建立基于哪个php版本的扩展,关于php-config文件:是在php编译生成后(安装好),放在安装目录下的一个文件。打开phpize文件内容会发现,里面定义好了php的安装目录等变量

    如果 执行了  /usr/local/php/bin/phpize  没有反应 提示你这是一个目录 那就是需要安装一个   yum install php-devel

    这个会当前目录生成一个configure配置文件

    3.调用configure生成Makefile文件,然后调用make编绎,make install安装

     如输入: ./configure --with-php-config=/usr/local/php/bin/php-config

    回车再输入make&make install

    回车会生成一个curl.so文件

     事情并不是一帆风顺的,果然又除了幺蛾子,提示了一个报错,不要怕 将 make clean  执行一下,然后再继续 

    如输入: ./configure --with-php-config=/usr/local/php534/bin/php-config

    回车再输入make&make install

    OK 大功告成,生成了一个 curl.so文件,梦寐以求的啊。

    接下来就是 cp curl.so /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/(这个路径,每个人的不一样哈但是前面肯定一样)

    拷贝curl.so文件在php扩展目录(可以通过在php.ini文件中查看扩展目录,也可以打印phpinf()这个函数来查看php扩展安装目录),在php.ini文件中加入

    修改扩展库目录extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-non-zts-20100525/"(可以通过在php.ini文件中查看扩展目录,也可以打印phpinf()这个函数来查看php扩展安装目录);

    添加curl扩展extension = curl.so

    结果 报错了

     哎 苦命人啊 

    继续

    上面的问题也终于被我解决了,报错的意思是没有找到路径。这里需要把 动态库的路径放到/etc/ld.so.conf中   然后再ldconfig

     ldconfig ,简单的说,他的作用就是将/etc/ld.so.conf列出的路径下的库文档缓存到/etc/ld.so.cache 以供使用 
    到此 重启PHP  基本就搞定了curl的拓展
     
     
  • 相关阅读:
    js事件冒泡替我背了很多黑锅 嘿嘿
    opencvmin函数
    关于Block Formatting Context--BFC和IE的hasLayout
    javascript面向对象包装类Class的类库解析
    nodejs中exports与module.exports的区别
    ie6固定定位层fixed
    CSS的类名交集复合选择器
    遮罩层覆盖整个页面
    nodejs的require模块及路径
    struts.properties配置详解
  • 原文地址:https://www.cnblogs.com/paddygege/p/6520693.html
Copyright © 2011-2022 走看看