如何安装/启用PHP phar扩展?

11

我正在尝试在我的KnownHost VPS上安装Composer。当我运行这个命令时:

curl -sS https://getcomposer.org/installer | php
我收到了以下错误信息:

I get this error message:

Some settings on your machine make Composer unable to work properly.
Make sure that you fix the issues listed below and run this script again:

The phar extension is missing.
Install it or recompile php without --disable-phar

我该如何安装phar扩展?我正在我的VPS上运行PHP 5.4.22。


尝试使用以下命令替代:curl -sS https://getcomposer.org/installer | php -d detect_unicode=Off - Amal Murali
2
你使用的操作系统是什么? - Paul
@AmalMurali 是的,但*nix的风格会对安装/启用phar扩展的最佳方式产生很大影响。 - Paul
1
我认为VPS正在运行CentOS 6。 - Garry Pettet
你解决过这个问题吗?我在DreamHost也遇到了类似的情况。 - jerrygarciuh
4个回答

9
你可以修改php.ini文件使其工作。(一些主机使用phprc文件来启用PHP中的不同设置,而不是php.ini。@jerrygarciuh 在Dreamhost上,请按照此处的说明操作。)
在添加了php.ini/phprc文件之后,将以下行添加到文件中(如果您的服务器不使用Suhosin进行安全性保护,则只需添加第一行):
extension = phar.so 
suhosin.executor.include.whitelist = phar

如果需要重启PHP,请执行以下操作(如果版本不同,请插入没有小数的PHP版本号):

killall -9 php70.cgi

然后检查确保它正常工作:

php -m | grep Phar

安装完Composer后,您就可以开始使用了。

2
请安装PHP的phar扩展。
urpmi php-phar

或者
apt-get install php-phar

1
如果我在SUSE Linux中执行“apt-get install php-phar”,那么它只会一直加载。 - Black
在SUSE Linux上,您可能更喜欢使用zypper命令进行安装,不是吗? - 7Tonin
我看不出任何区别。 - Black
对于Suse,zypper install php-phar 对我来说很好用。 - Elikill58

1
最终我通过让我的主机重新构建支持PDO的PHP来解决这个问题。

0

我在Ubuntu 16.04中遇到了相同的问题。浪费了两个小时后,我想出了这个解决方案:

  1. 首先安装所需的PHP版本:sudo apt install php7.2

  2. 安装composer。curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

  3. 检查composer是否工作正常,只需输入以下命令即可: composer

如果composer正常工作,则你可以开始使用它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接