努力在Centos上安装PHP pecl

时间:2013-10-22 11:52:31

标签: php linux centos pecl

我正在尝试在我的CentOS服务器上安装php_http PHP扩展。

我做了:

yum install php-pear

但是得到:

No package php-pear available

但我能做到:

pear

从Pear获取命令列表。

yum install pecl相同。我可以peclpecl install pecl_http返回:

No releases available for package "pecl.php.net/pecl_http"
install failed

然而/usr/bin/pecl不是存在的目录。另外sudo pecl install pecl_http会返回sudo: pecl: command not found,我觉得很奇怪。

我不完全确定这里发生了什么/我做错了什么。

编辑:我使用以下回购:

base                         CentOS-6 - Base
epel                         Extra Packages for Enterprise Linux 6 - x86_64
extras                       CentOS-6 - Extras
rpmforge                     RHEL 6 - RPMforge.net - dag
updates                      CentOS-6 - Updates
vz-base                      vz-base
vz-updates                   vz-updates                                                            

9 个答案:

答案 0 :(得分:9)

步骤1)导入REMI回购

CentOS 5

rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm;
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm;

CentOS 6

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm;
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm;

步骤2)安装php-pear

yum --enablerepo=remi,remi-php55 install php-pear

步骤3)安装pecl_http

pecl install pecl_http

答案 1 :(得分:8)

在CentOS上,

  1. 安装PHP Pear(如果尚未安装):

    # yum install php-pear
    
  2. 如果尚未安装GCC,请安装:

    # yum install gcc
    
  3. 如果尚未安装cURL,请安装:

    # yum install curl-devel
    
  4. 如果尚未安装,请安装以下库:

    # yum install php-devel
    # yum install zlib-devel
    # yum install pcre-devel
    
  5. 开始主要安装:

    # pecl install pecl_http
    
  6. 将以下行添加到/etc/php.ini文件

    extension=raphf.so
    extension=propro.so
    extension=http.so
    
  7. 重启apache服务器,以便加载扩展

    # service httpd restart
    
  8. 您可以检查它是否成功安装:

    # pecl list
    

答案 2 :(得分:6)

对于遇到此问题的其他人。我在试图弄清楚为什么遇到同样的问题时发现了这个问题。原来我的托管服务提供商的默认配置是在php*指令中包含exclude。检查/etc/yum.conf并确保您尝试安装的软件包与exclude指令中的条目不匹配。

答案 3 :(得分:6)

如果你正在运行php 7,你可能想尝试这个

yum install php70w-pear

如果您遇到任何错误,请务必从之前的任何尝试中卸载pear包

yum remove php-pear
祝你好运

答案 4 :(得分:1)

如果您使用的是PHP 5.4.x,IMO最好使用的回购是iuscommunity。它非常稳定,Rackspace使用它只为PHP和一些其他的CentOS包。

rpm -Uhv http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/ius-release-1.0-11.ius.centos6.noarch.rpm

yum install php54-pear

请注意,它的php54-pear而不是php-pear的原因是因为5.3和5.4都在存储库中编译。这是php包的列表 - > http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/repoview/development.languages.group.html

我测试了这个并且它有效,但我只使用EPEL和iuscommunity REPO。我自己避免使用rpmforge。

答案 5 :(得分:0)

在观看了很多线程并安装了梨和所有的devtool后,我终于解决了安装此扩展程序的问题:

yum install php-pecl-mongo
正如我在https://madcoda.com/2012/12/install-mongodb-php-driver-in-centos-6-3/

中看到的那样

答案 6 :(得分:0)

Centos 6.5和php7:

sudo su -

yum install yum-utils

您可以获得lua的最新版本:http://pecl.php.net/package/lua

wget http://pecl.php.net/get/lua-2.0.4.tgz

tar -xvzf  lua-2.0.4.tgz

cd lua-2.0.4

mkdir  /usr/include/lua

mv * /usr/include/lua

yum install gcc

yum install php70w-pearl php70w-devel



yum install curl-devel

yum install zlib-devel

yum install pcre-devel

ln -s /usr/include/lua.h /usr/include/lua/lua.h

rpm -Uvh https://centos6.iuscommunity.org/ius-release.rpm

yum-config-manager --enable remi-php70

yum update 

yum --enablerepo=remi,remi-php70 install php70w-pear

yum install lua-devel lua-static

pecl install lua-2.0.4

答案 7 :(得分:0)

无论你的PHP提供者是什么(IUS,Remi或Webtatic),梨包和pecl扩展“应该”在那里可用,而不需要从源代码编译它(通常不鼓励,特别是在生产时)

至少“remi”提供大多数扩展程序,请参阅the list

因此安装应该像

一样简单
yum install php-pecl-http
yum install php-pecl-lua
etc

并且,不要忘记阅读Wizard instructions

答案 8 :(得分:0)

在我最终意识到我的 WHM/cPanel 安装阻止了 yum 软件包之前,我尝试了该列表中的几乎所有内容。我必须通过 WHM 内的 主页 > 软件 > 模块安装程序 安装所有 PECL 模块(我一直在尝试在此特定场合安装 mongodb)(cpanel 文档说 you have to be logged in as root)。< /p>