更新larabbs到7.x 遇到HTTP Error 500 的问题

更新larabbs从laravel6.x到7.x 遇到HTTP Error 500 的问题!

今天把larabbs从 laravel 6.x 跟新到laravel 7.x, 网页显示 “目前无法处理此请求。 HTTP ERROR 500”。
ps: 我使用的网站地址是 larabbs7.test/

1. 寻找问题

查看网站的log, log的位置在/var/log/nignx/larabbs7.test-error.log,发现致命错误

[error] 5881#5881: *3 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/larabbs7/vendor/nesbot/carbon/src/Carbon/Translator.php on line 18

google了一下是发现是由于php的版本小于7.2。
ps: 我是参考了这个帖子github.com/briannesbitt/Carbon/iss...

使用php -v 发现php的版本是7.3。

注意 这个是php cli的版本。

使用在index.php 上添加phpinfo()命令打印php的信息发现php-fpm的版本是7.1。 这就是问题的根源所在。

2.更改nginx的网站配置,更新php7.1-fpm 到 php7.4-fpm

运行以下代码
登入root用户

sudo su

打开网站在nignx的配置,我的地址是larabbs7.test

vim /etc/nginx/sites-available/larabbs7.test

修改文件,把原本的php7.1-fpm.sock 换成 php7.4-fpm.sock。(位置在图片中画红圈的地方)

接下来重启nginx

sudo service nginx restart
sudo service php7.4-fpm restart

好现在可以正常访问网站了
使用phpinfo()发现php的版本是PHP 7.4.7 。

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 2

非常感谢,本站的Laravel入门教程里也有这个问题,好久都没找到原因

3年前 评论

今天遇到这个问题了,搞了一下午,感谢老哥

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!