告诉Composer使用不同的PHP版本

我一直坚持了几天。 我正在使用1and1托pipe,他们的PHP设置有点怪异。

如果我只使用php composer.phar install ,那么我使用PHP 4.4.6,这是可怕的不足。 但是,我可以运行php5.5 composer.phar install ,进一步得到一点点,但是它仍然失败,因为在某个地方,PHP被再次调用,但是它失败了,因为它使用了4.4.6。

有什么方法可以告诉composer php使用php5.5命令吗? 有没有人成功得到composer phpconfiguration1and1托pipe?

我试图让Laravel运行起来(使用Composer)。 我已经能够在我的GoDaddy域,但不是1and1。

你可以改变你的PATH覆盖PHP版本。

 PATH="/home/user/bin:$PATH" 

/home/user/bin (或其他任何目录)中,创建一个名为php的符号链接到php5二进制文件。

另一种选择是使用shell别名:

 alias php="/path/to/php5" 

您可以尝试将php和php-config文件复制到/ usr / local / bin中。 该路径具有更高的优先顺序,应覆盖/ usr / bin文件夹而无需禁用SIP。 那就是我所做的。

php5.5 composer.phar install失败,因为你的composer.json是告诉它运行php而不是php5.5 ,编辑文件composer.json替换PHP脚本引用到php5.5 。 例:

从:

 "post-root-package-install": [ "php -r \"copy('.env.example', '.env');\"" ], 

至:

 "post-root-package-install": [ "php5.5 -r \"copy('.env.example', '.env');\"" ], 

即使这样做,1and1对脚本执行有一个内存限制,所以php5.5 composer.phar install不会失败,但是它也不会执行。 您仍然可以手动运行安装后的脚本。

我已经将Laravel webapps部署到1and1而没有提交vendor目录,按照本指南:将Laravel Webapp部署到1and1