如何解決Laravel.log 檔案寫入的問題

不言
發布: 2023-04-03 07:12:01
原創
3158 人瀏覽過

Laravel.log 檔案寫入的問題

專案使用 root 帳戶部署到伺服器後,存取傳回 500 錯誤。

出現問題後首先按照以下思路查找問題:

  1. 查看nginx 錯誤日誌

  2. 查看php 錯誤日誌

  3. 程式碼中斷點測試是否能存取

在錯誤日誌中沒有找到蹤跡,500 錯誤通常是程式碼錯誤導致的,確認是否開啟laravel的偵錯功能:

# 查看 .env
APP_DEBUG=true
登入後複製

設定後頁面上顯示錯誤訊息:日誌檔案無權限寫入。這是因為日誌檔案的擁有者、使用者群組都是 root,權限預設是 755,導致非 root 的其他使用者無法寫入。

查看寫入者

執行下列指令查看php-fpm 的擁有者:

ps -ef | grep php-fpm
登入後複製

回傳訊息:

apache    9520 11965  0 May25 ?        00:02:11 php-fpm: pool www
apache   10437 11965  0 May26 ?        00:02:10 php-fpm: pool www
root     11965     1  0 May20 ?        00:07:35 php-fpm: master process (/etc/php-fpm.conf)
登入後複製

第一列就是php- fpm 的執行使用者。

設定日誌權限​​

確認日誌目錄的權限

ls -l storage/
登入後複製
drwxr-xr-x 3 root root 4096 Jul 11 18:17 app
drwxr-xr-x 6 root root 4096 Jul 12 10:58 framework
drwxr-xr-x 2 root root 4096 Jul 12 16:17 logs
登入後複製

這裡可以發現檔案擁有者為root,而php 作為其他使用者只有讀取和執行權限,沒有寫入權限。

修改檔案權限

# -R 指递归的修改文件夹和此文件夹下所有内容
# 我的 php 是用户 apache 的,请参考自己的情况修改
chown apache storage/logs -R
登入後複製

framework 資料夾也有需要寫入的權限,views 層產生的快取就在其中,可以同時修改掉

chown apache storage/framework -R
登入後複製

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

Laravel開發環境部署之homestead 安裝設定過程(windows系統)

laravel的路由(router)圖文詳解

#

以上是如何解決Laravel.log 檔案寫入的問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板