centos多PHP版本,使用composer遇到的问题

服务器CentOS7.4 装有 PHP5.6和PHP7.1两个版本,两个版本均没有把PHP放到环境变量

使用yum install composer后自动安装了PHP5.4版本,并把PHP5.4作为了默认版本。

项目是基于PHP7.1的,很多插件只有PHP7以上的版本才能安装。当装好composer后,直接使用composer install 提示安装错误,PHP版本要求大于5.6

解决办法:

  • 把$HOME/bin目录下的php重命名为php54, 让默认的php找不到可用文件
  • find / -name php-fpm 找到php71的php-fpm的目录,把这个目录写入环境变量
  • source ~/.bash_profile使环境变量生效

再通过php -v可查看到PHP版本为PHP7.1

再进入到项目目录,使用composer install 就搞定了。:)

  • 由于composer 建议不要以root用户执行, 我在这里su nginx,在nginx用户下执行。
  • 需要注意的是环境变量的写法
    PATH=$PATH:/path/to/(php-fpm所在的bin)
    export PATH

    千万别把$PATH:写掉了,否则很多基础命都没法用了

我在nginx用户下配置的环境变量,好像退出nginx用户后就不生效了,当再次进入nginx后,需要重新执行 source命令,使环境变量中的php 生效,这样很不方便。 最后把php的环境变量配置在了root用户的~/.bash_profile中