安装PECL失败,raphf.so找不到

时间:2015-09-03 12:32:30

标签: php linux ubuntu mediawiki

我在运行Ubuntu 14.10和php 5.5.9-1ubuntu4.11的VPS上尝试install MediaWiki。我使用this guide安装了php5。现在我看到了MediaWiki设置文件。它告诉我缺少可选的PECL:"警告:intl PECL扩展不能用于处理Unicode规范化,而是回退到慢速纯PHP实现。"

phpinfo()确认了这一点(CTRL + F代表" PECL" = 0次点击)。

但是,如果我运行sudo pecl install pecl_http,我会收到错误:

...
checking for ext/raphf support... no
    configure: error: Please install pecl/raphf and activate extension=raphf.so in your php.ini
    ERROR: `/tmp/pear/temp/pecl_http/configure --with-http-zlib-dir=/usr --with-http-libcurl-dir=/usr --with-http-libevent-dir=/usr --with-http-libidn-dir=/usr' failed

The same error as this prior question on SO。我已经尝试了答案中提到的所有内容,包括添加三个" extension ="到php.ini的行。

尝试安装raphf导致:

sudo pecl install raphf
pecl/raphf is already installed and is the same as the released version 1.1.0
install failed

phpinfo()列出了已安装的RAPHF 1.1.0。要测试的脚本(通过浏览器访问,而不是通过控制台访问):

echo extension_loaded(raphf) ? "raphf loaded" : "raphf not loaded";

确认已加载。 Script from a prior SO question没有得到答案。

如果我搜索例如服务器上的raphf.so文件找不到。对于添加到php.ini的其他三个扩展也是如此(在其他问题中提到)。

基本上,RAPHF似乎已安装且未同时安装。我已经没有早期的问题和指导咨询,所以我来到这里。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

安装缺少的intl扩展名:

sudo apt-get install php5-intl

pecl_httppecl_intl是两回事,顺便说一句。

  

基本上,RAPHF似乎已安装且未安装   时间。

Web服务器的PHP和控制台PHP使用不同的php.ini 。 因此,当您在网络服务器phpinfo();上看到模块X时,并不意味着它可以通过php-cli(pecl == console == php-cli)获得。