Cập nhật ngày 25/12/2017
Homestead bản mới nhất đã cho phép modify PHP version trong Homestead.yaml
.
sites: - map: homestead.test to: /home/vagrant/code/Laravel/public php: "5.6"
Phiên bản hiện tại v7.0.1
đã cập nhật lên PHP 7.2 nên đã gây một số lỗi khi chạy Laravel. Vì vậy tốt nhất hãy dùng PHP 7.0 để chạy Laravel nhé.
sites: - map: homestead.test to: /home/vagrant/code/Laravel/public php: "7.0"
Sau một hồi tìm hiểu rốt cục cũng biết là homestead
bản nào dùng PHP5.
- Box version là 0.3.3
- Homestead release là v2.2.2
Như vậy chỉ cần checkout v2.2.2
là được. Các bước như sau:
$ git clone https://github.com/laravel/homestead.git homestead222 $ cd homestead222 $ git checkout v2.2.2
Config Homestead.yaml ở đâu
Lưu ý rằng bản này không để Homestead.yaml
ở thư mục gốc mà đường dẫn là src/stubs/Homestead.yaml
. Và Mỗi lần config Homestead.yaml
thì phải chạy lệnh sau:
$ bash init.sh // Nhớ nhập y 3 lần nếu nó hỏi override file
Khởi động box này:
$ vagrant up
Nếu bạn đã vagrant up
rồi thì chạy:
$ vagrant reload --provision
Mysql password của homestead user bị expire
Đây là một lỗi của homestead phiên bản cũ, để fix cái này thì cần disable chức năng password expire của mysql đi.
SSh vào box:
$ vagrant ssh
Disable chức năng password expire trong my.cfn
và khởi động lại mysql:
$ echo "default_password_lifetime = 0" >> /etc/mysql/my.cnf $ sudo service mysql restart
Một điều nữa là bạn phải cài plugin host-updater
để vagrant có thể tự động cập nhật sites map vào /etc/host
nhé:
$ vagrant plugin install vagrant-hostsupdater
That’s all.