按照官網文檔(https://learnku.com/docs/laravel-development-environment/7.x/development-environment-windows/8444)官方文檔完成,項目啓動後,訪問域名報錯500,tail -f /var/log/nginx/another.test-error.log 返回以下錯誤信息
2020/05/31 12:12:16 [error] 2692#2692: *1 FastCGI sent in stderr: "PHP message: PHP Fatal error: Declaration of Carbon\Translator::setLocale($locale) must be compatible with Symfony\Contracts\Translation\LocaleAwareInterface::setLocale(string $locale) in /home/vagrant/Code/test/vendor/nesbot/carbon/src/Carbon/Translator.php on line 18
PHP message: PHP Stack trace:
PHP message: PHP 1. {main}() /home/vagrant/Code/test/public/index.php:0
PHP message: PHP 2. App\Http\Kernel->handle() /home/vagrant/Code/test/public/index.php:55
PHP message: PHP 3. App\Http\Kernel->sendRequestThroughRouter() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:109
PHP message: PHP 4. App\Http\Kernel->bootstrap() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:135
PHP message: PHP 5. Illuminate\Foundation\Application->bootstrapWith() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151
PHP message: PHP 6. Illuminate\Foundation\Bootstrap\BootProviders->bootstrap() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:230
PHP message: PHP 7. Illuminate\Foundation\Application->boot() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17
PHP message: PHP 8. array_walk() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:851
PHP message: PHP 9. Illuminate\Foundation\Application->Illuminate\Foundation\{closure:/home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:849-851}() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:851
PHP message: PHP 10. Illuminate\Foundation\Application->bootProvider() /home/vagrant/Code/test/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:850
PHP message: PHP 11. Illuminate\Foundation\Application->call() /home/vagrant/Code/test/vendor/laravel/framewo
2020/05/31 12:12:16 [error] 2692#2692: *1 FastCGI sent in stderr: "erviceProvider->updateLocale() /home/vagrant/Code/test/vendor/nesbot/carbon/src/Carbon/Laravel/ServiceProvider.php:20
PHP message: PHP 19. Carbon\Carbon::setLocale() /home/vagrant/Code/test/vendor/nesbot/carbon/src/Carbon/Laravel/ServiceProvider.php:40
PHP message: PHP 20. Carbon\Carbon::getLocaleAwareTranslator() /home/vagrant/Code/test/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php:480
PHP message: PHP 21. Carbon\Carbon::translator() /home/vagrant/Code/test/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php:728
PHP message: PHP 22. spl_autoload_call() /home/vagrant/Code/test/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php:691
PHP message: PHP 23. Composer\Autoload\ClassLoader->loadClass() /home/vagrant/Code/test/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php:691
PHP message: PHP 24. Composer\Autoload\includeFile() /home/vagrant/Code/test/vendor/composer/ClassLoader.php:322
PHP message: PHP 25. include() /home/vagrant/Code/test/vendor/composer/ClassLoader.php:444" while reading response header from upstream, client: 192.168.10.1, server: another.test, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.1-fpm.sock:", host: "another.test"
原因:主要是加載的PHP7.1版本,在Homestead.yaml中沒有配置PHP版本,所以默認加載的PHP7.1,在Homestead.yaml中修改以下:
sites:
- map: another.test
to: /home/vagrant/Code/test/public
php: "7.4"
修改完成重新加載vagrant:cd ~/Homestead && vagrant reload --provision
瀏覽器中訪問:http://another.test/,這下已經可以正常訪問了
登錄虛擬機:vagrant ssh
查看虛擬主機配置參數:已經更改成PHP7.4版本,具體看下圖
vim /etc/nginx/sites-available/another.test
vim /etc/nginx/sites-enabled/another.test