Laravel 项目中 PHP 版本和 Homestead 中 PHP 版本不一致?

我是用homestead 开发laravel 项目,遇到了php 版本不一致的问题:

问题:

homestead 中的 输入 php -v :

laravel 项目中 php 版本和 homestead 中 php 版本不一致, 会是什么原因引起的?

显示版本为的php 版本为:7.2.5

laravel 项目中输入 phpinfo():

laravel 项目中 php 版本和 homestead 中 php 版本不一致, 会是什么原因引起的?

显示的php版本为:7.1.17 

其他信息:

虚拟机中的php 进程:

laravel 项目中 php 版本和 homestead 中 php 版本不一致, 会是什么原因引起的?

安装的php 版本:

laravel 项目中 php 版本和 homestead 中 php 版本不一致, 会是什么原因引起的?

homestead.yaml

laravel 项目中 php 版本和 homestead 中 php 版本不一致, 会是什么原因引起的?

无效,更改不了版本号.

为什么会出现 php 版本不一致的情况?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
最佳答案

看一下 nginx 虚拟域名的配置 路径: /etc/nginx/sites-available

file

4年前 评论
matteao (楼主) 4年前
whcoding (作者) 4年前
讨论数量: 5

改了配置后使用了这个命令吗?


vagrant provision && vagrant reload
4年前 评论
matteao (楼主) 4年前
matteao (楼主) 4年前
L学习不停 (作者) 4年前
matteao (楼主) 4年前

看一下 nginx 虚拟域名的配置 路径: /etc/nginx/sites-available

file

4年前 评论
matteao (楼主) 4年前
whcoding (作者) 4年前

如楼上所述,nginx 中 fastcgi_pass 指定的版本不对吧!

4年前 评论
matteao (楼主) 4年前

@Foreman-PHP, @Jinrenjie
确实是这个原因,谢谢!
file

4年前 评论

目前,我解决了这个问题,但是不知道是不是有挖了一个坑:

  • 我按照教程 如何升级 Homestead 环境 重新升级了我的vagrant 和 homestead box :
    vagrant 2.2.6
    homestead box 9.2.2-alpha1
    homestead 脚本 
  • 结果还是不行
    homestead 中的php版本升级为7.4, laravel 项目中 通过 phpinfo() 输出的php版本是7.1.33。采用在homestead.yaml 中限制php版本为7.3 也无效

    解决 Homestead 版本与 homestead.box 不对应造成的冲突的启发下:我注意到, homestead 脚本中 路径scripts/serve-laravel.sh 文件中,始终为:fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;

file
所以,我改了代码:php7.3-fpm.sock. 然后按照解决 Homestead 版本与 homestead.box 不对应造成的冲突, 执行脚本,加载配置,启动, 一切ok了。

4年前 评论
qingyan233 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!