更新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 协议》,转载必须注明作者和本文链接
非常感谢,本站的Laravel入门教程里也有这个问题,好久都没找到原因
今天遇到这个问题了,搞了一下午,感谢老哥