如何使用旧版本的 Laravel Homestead
发布时间 作者 Joe Ferguson
Homestead 由两部分组成:Vagrant 镜像和 Homestead 源代码(Homestead 应用)。Homestead Vagrant 镜像是预配置的虚拟机的快照,可以立即使用。这样您就不必花时间安装 PHP、NGINX 等东西。我们使用 Laravel Settler 仓库来构建 Homestead 镜像。您需要确保 Homestead Vagrant 镜像的版本与您使用的 Homestead 应用的版本兼容。
为什么要使用旧版本?如果您正在使用 Laravel 5.1(最新的 LTS 版本)应用程序,您可能仍在运行 PHP 5.5。虽然 Homestead 开发进展很快,但您可能还没有准备好将客户从 PHP 5.5 迁移。虽然您应该已经将应用程序迁移到 PHP 7.0 以获得性能提升,但我理解因为 Laravel 5.1 支持 5.5,开发者可能想继续使用该版本。
目前,无法使用官方版本的 laravel/homestead
镜像与 PHP 5.5 配合使用。不幸的是,MySQL 密码已过期,Homestead 不会拥有功能完备的 MySQL 版本,直到您更新密码。有关更多信息,请参见 github.com 上的此问题。如您在上一篇文章中所见,我构建了一个更新的镜像,因为我不想为一个“旧”镜像创建“新”版本,并且 Homestead 不再“正式”支持旧版本的 PHP。
如何在 Laravel Homestead 中使用 PHP 5.5
对于 PHP 5.5,您应该使用 Homestead 应用的 2.1.8 版本以及 Svpernova09/homestead-legacy Vagrant 镜像。此镜像已更新,以修复官方 Homestead 镜像版本 0.3.x 中的 MySQL 密码过期问题。
注意:此镜像基于 Ubuntu 14.04(Homestead 在当时使用的版本)。
编辑您的 Homestead.yaml 文件
---ip: "192.168.10.10"memory: 2048cpus: 1provider: virtualboxbox: Svpernova09/homestead-legacy
查看 Homestead 仓库的 2.1.8 版本
cd /path/to/Homesteadgit checkout v2.1.8 Note: checking out 'v2.1.8'. You are in 'detached HEAD' state. You can look around, make experimentalchanges, and commit them;you can also discard any commits you make in thisstate without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you maydo so (at any time) by using -b with the checkout command again. Example: git checkout -b <new-branch-name> HEAD is now at 3014840... update version
现在您可以运行“vagrant up”并检查 PHP 的版本
vagrant@homestead:~$ php -vPHP 5.5.9-1ubuntu4.20 (cli) (built: Oct 3 2016 13:00:37)Copyright (c) 1997-2014 The PHP GroupZend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans with blackfire v1.14.1~linux-x64-non_zts55, https://blackfire.io, by Blackfireio Inc.
如何在 Laravel Homestead 中使用 PHP 7.0
编辑您的 Homestead.yaml 文件
---ip: "192.168.10.10"memory: 2048cpus: 1provider: virtualboxversion: 0.6.0
查看 Homestead 仓库的 3.1.0 版本
cd /path/to/Homesteadgit checkout v3.1.0 HEAD is now at 7924ab4... version
现在您可以运行“vagrant up”并检查 PHP 的版本
vagrant@homestead:~$ php -vPHP 7.0.13-1+deb.sury.org~xenial+1 (cli) ( NTS )Copyright (c) 1997-2016 The PHP GroupZend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.13-1+deb.sury.org~xenial+1, Copyright (c) 1999-2016, by Zend Technologies with blackfire v1.14.1~linux-x64-non_zts70, https://blackfire.io, by Blackfireio Inc.