按照官网文档(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

laravel 项目启动500

相关文章: