Homestead中PHP版本问题
1.项目运行时PHP版本
1.1 查看Homestead中可用的PHP版本
ll /etc/php
可用版本是有许多的
默认Homestead环境使用的是最新的PHP 8.1.8
:
1.2 切换项目使用版本
在Homestead.yaml
文件中进行配置:
...
sites:
- map: yxq.test
to: /home/vagrant/yxq-admin/public
php: "7.3"
...
然后重载一下虚拟机
vagrant reload --provision
2.Composer使用版本
项目是从Github上Clone下来的,在composer update
时报了一堆错误
看了一下已上线的环境使用的PHP 7.3
当我直接使用composer update
时,默认会调用环境变量中的PHP 8.1
查看一下PHP的环境变量设置
whereis php
发现各个版本都是有的,只是调用时候要加上版本号
所以只能放弃全局的Composer,单独在项目中下载一个composer.phar
php7.3 composer.phar update
之后的所有对artisan
的操作,都要使用php7.3 artisan ...
的方式了,避免因为版本不正确而导致错误发生。
PS:可以直接更换环境变量,一劳永逸,我主用的还是最新版 所以没必要换了。
# 安装完新项目的依赖后,要拷贝一下.env
vagrant@homestead:~/yxq-admin$ cp .env.example .env
# 生成key
vagrant@homestead:~/yxq-admin$ php7.3 artisan key:generate
Application key set successfully.
接下来数据库迁移
修改一下.env
DB_DATABASE=yxq
DB_USERNAME=homestead
DB_PASSWORD=secret
执行迁移
php7.3 artisan migrate
3.Vagrant常用命令
序号 | 命令 | 解释 |
---|---|---|
1 | vagrant up | 启动虚拟机 |
2 | vagrant ssh | 登录虚拟机 通过 exit 退出 |
3 | vagrant status | 查看虚拟机状态 |
4 | vagrant halt | 关机 |
5 | vagrant destroy | 删除虚拟机 |
6 | vagrant reload --provision | 修改配置文件后重载 |
引用
1.Laravel Homestead:https://laravel.com/docs/9.x/homestead#main-content
2.composer.phar Download: https://getcomposer.org/download/
3.多版本php环境,指定composer 使用的php版本: https://segmentfault.com/q/1010000012626883
4.homestead 添加新站点:https://www.cnblogs.com/cjjjj/p/9420844.html
评论 (0)