前言
我的 Homestead
版本還是比較老了,其中 PHP 的版本最高只支援到 PHP7.2,又不想更新 Homestead
所以準備裝個 PHP7.4 了。
- 檢視PHP版本
vagrant ssh
進入虛擬機器,php -v
檢視PHP版本, 我的是PHP7.2 - 檢視所有 php 版本和當前版本
update-alternatives --display php
php - manual mode link best version is /usr/bin/php7.2 link currently points to /usr/bin/php7.2 link php is /usr/bin/php slave php.1.gz is /usr/share/man/man1/php.1.gz /usr/bin/php5.6 - priority 56 slave php.1.gz: /usr/share/man/man1/php5.6.1.gz /usr/bin/php7.0 - priority 70 slave php.1.gz: /usr/share/man/man1/php7.0.1.gz /usr/bin/php7.1 - priority 71 slave php.1.gz: /usr/share/man/man1/php7.1.1.gz /usr/bin/php7.2 - priority 72 slave php.1.gz: /usr/share/man/man1/php7.2.1.gz
- 安裝PHP7.4
更新源
安裝sudo apt update
執行後,會列出當前 php 所有版本和編號,輸入編號,切換到執行的版本sudo apt-get -y install php7.4-mysql php7.4-fpm php7.4-mbstring php7.4-xml php7.4-curl
sudo update-alternatives --config php
切換完版本後,我們輸入 php -m 可以發現少了很多 Laravel 必要的擴充套件, 那麼我們可以使用 sudo apt install php7.4-mbstring
命令安裝其餘需要的擴充套件
- 重啟虛擬機器
vagrant reload --provision
tips:
此時執行 laravel 專案 可能會出現 許可權問題
The stream or file “/vagrant/storage/logs/laravel-****-**-**.log” could not be opened: failed to open stream: Permission denied
修復方法
sudo vi /etc/php/7.4/fpm/pool.d/www.conf
change:
user = www-data
group = www-data
to
user = vagrant
group = vagrant
Then:
sudo service php7.4-fpm restart
本作品採用《CC 協議》,轉載必須註明作者和本文連結