Homestead随意停止为我工作,所以我试图删除整个东西并重新安装,但它并没有顺利。
经过一天半的混乱,经历了各种各样的问题,我已经“跑了”。但是,由于我无法理解的原因,我的Homestead盒子现在运行PHP 7。
The instructions我正在关注安装PHP 7的可选选项,但我故意跳过它,因为我们使用的是PHP 5。
对于我的生活,我无法弄清楚如何解决这个问题。我尝试过的事情:
php7.0-fpm: unrecognized service
的安装过程中出现了一些失败,并且已配置的站点返回了502 Bad Gateway错误。寻找解决方案一直导致死胡同。
我只是一个虚拟的前端开发人员。 :) Laravel,Vagrant,Homestead,所有这些都让我头疼。我只想让它重新开始工作,这样我才能回到实际的工作中去。任何建议或替代研究这个问题的途径都将受到赞赏。
答案 0 :(得分:9)
我也经历过这个问题,我通过安装一个旧的宅基地v0.3.3解决了这个问题,并且我使用了旧版本的宅基安装程序,所以我建议你删除当前的盒子v0 .4.0并删除你的宅基文件夹,然后执行以下操作:
$vagrant box add laravel/homestead --box-version 0.3.3
然后从git下载旧版本的Homestead安装程序,我使用v2.1.8它工作正常。 享受php 5.6:)
答案 1 :(得分:1)
我有一个类似的问题,我试图将Homestead升级到最新的Homestead 7.0盒子,并将其配置为运行PHP 5.6而不是PH7,各种消息人士称,可以通过在.yaml文件中添加一行以指定PHP来实现版本。
sites:
- map: myproject.local
to: /home/vagrant/Code/craven/public_html
php: "5.6"
当我尝试这样做时实际上发生的是我收到了502 CGI网关错误。以下是我必须解决的步骤的摘要:
1)SSH进入Homestead虚拟机。
ssh vagrant@127.0.0.1 -p 2222
查看/ var / log / nginx /中的nginx错误日志,发现服务器正在寻找的PHP 5.6文件不存在。
您可以通过查看可执行文件来确认这一点。
ls -la /usr/bin/php*
2)要安装PHP 5.6,请运行
sudo apt-get update
sudo apt-get install php5.6-fpm
您可以通过以下命令确认php 5.6服务正在运行
service --status-all
3)所有这些都起作用后,刷新您网站的网页,它现在应该可以正常工作了。就我而言,因为我正在运行Laravel 4.2站点,所以我要安装Mcrypt:
sudo apt-get install php5.6-mcrypt
4)为了启动和运行mysql数据库,我还必须安装mysql。
sudo apt-get install php5.6-mysql
当然,毕竟,在升级Homestead盒之前,我必须从导出的文件中重新导入数据库内容。
请注意,如果您曾经破坏并重新创建Homestead框,则需要再次重复所有这些步骤。