我在运行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似乎已安装且未同时安装。我已经没有早期的问题和指导咨询,所以我来到这里。有什么想法吗?
答案 0 :(得分:1)
安装缺少的intl扩展名:
sudo apt-get install php5-intl
pecl_http
和pecl_intl
是两回事,顺便说一句。
基本上,RAPHF似乎已安装且未安装 时间。
Web服务器的PHP和控制台PHP使用不同的php.ini 。
因此,当您在网络服务器phpinfo();
上看到模块X时,并不意味着它可以通过php-cli(pecl == console == php-cli)获得。