Vagrantfile PHP v5.6已指定,但已安装v5.5

Vagrantfile PHP v5.6已指定,但已安装v5.5,php,nginx,vagrant,vagrantfile,vagrant-provision,Php,Nginx,Vagrant,Vagrantfile,Vagrant Provision,我有一个Vaprobash文件构建一个Ubuntu Nginx堆栈 我在其中指定了PHP v5.6: php_version = "5.6" //Options: 5.5 | 5.6 然而,我跑了 $ vagrant up 当我把ssh放到盒子里 $ php -v 它显示了PHP5.5.9-1ubuntu4.20(cli)(构建时间:2016年10月3日13:00:37) 为什么没有安装5.6 我不确定该回购协议在ppa迁移后是否已针对php进行了更新(请参阅) 基本上,在scripts

我有一个Vaprobash文件构建一个Ubuntu Nginx堆栈

我在其中指定了PHP v5.6:

php_version = "5.6" //Options: 5.5 | 5.6
然而,我跑了

$ vagrant up
当我把ssh放到盒子里

$ php -v 
它显示了PHP5.5.9-1ubuntu4.20(cli)(构建时间:2016年10月3日13:00:37)


为什么没有安装
5.6

我不确定该回购协议在ppa迁移后是否已针对php进行了更新(请参阅)

基本上,在
scripts/php.sh
中,您需要将ppa替换为

sudo add-apt-repository ppa:ondrej/php
(如果在初始设置后直接从VM运行此命令,请确保运行
sudo apt get update
)- 要安装php5.6,您需要运行

sudo apt-get install -qq libapache2-mod-php5.6
有了这个变化,你现在可以

vagrant@vaprobash:~$ php -v
PHP 5.6.28-1+deb.sury.org~trusty+1 (cli)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
如果需要其他php模块,请确保在php版本中指定5.6来替换安装,例如

sudo apt-get install -qq php5.6-fpm

试着重建你的盒子
vagrant destroy&vagrant up
我试过$vagrant reload--provision,但结果是一样的。vagrant destroy&vagrant up得到了同样的结果$php-v php 5.5.9-1ubuntu4.20(cli)(构建时间:2016年10月3日13:00:37)完美。非常感谢。