1.原先之前的版本資訊
vagrant : v1.6.3
Homestead 分支: v4.8.0
Homestead box: v3.0.0
Homestead box name: laravel/homestead
2.升級版本
vagrant: v2.2.4
Homestead 分支:v7.8.0
Homestead box: v6.1.1
Homestead box name: lc/homestead
3.問題描述
升級後,訪問 homestead.test 或者其他自定義的域名都出現 502 Bad GateWay。
4.發現問題
檢視 nginx 錯誤日誌(/var/log/nginx/homestead.test-error.log)。
出現錯誤:connect() to unix:/var/run/php/php-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.10.1, server: homestead.test, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php-fpm.sock:", host: "192.168.10.10"
5.尋找錯誤原因
1.檢視當前 php 版本
2.檢視 fpm 的配置檔案 (/etc/php/7.2/fpm/pool.d/www.conf)
3.檢視 php7.2-fpm.sock 所在目錄(/var/run/php)
發現沒有 php-fpm.sock 。
4.重啟 homestead box, 發現載入的 base box 名稱是 laravel/homestead 。
5.當前存在的只有一個 box: lc/homestead 。
參考:https://blog.csdn.net/qq_39479575/article/...
6.解決
1.刪除 homestead, 重新安裝。
vagrant destroy
2.找到檔案 homestead.rb 修改(Homestead/scripts/homestead.rb)
config.vm.box = settings["box"] ||= "lc/homestead"
3.重啟
vagrant up
4.問題解決。
重新安裝, 啟用了 lc/homestead 這個 box 之後就能正常訪問了。
參考:問答:教程邏輯不通?
注:homestead.rb 這個檔案預設載入的 box 的名稱是 laravel/homestead 。如果沒有裝載這個名稱的 box, 會從遠端拉。
本作品採用《CC 協議》,轉載必須註明作者和本文連結