更新larabbs到7.x 遇到HTTP Error 500 的問題

erenst發表於2020-08-22

更新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 協議》,轉載必須註明作者和本文連結

相關文章