該
在本地,我可以很好地看到

即使它顯示 404 not found,我也可以去 Laravel 中的日志檔案
/storage/logs/laravel-*.log
我可以看到崩潰堆疊跟蹤...我試過了
APP_DEBUG=true, 并APP_DEBUG=false顯示相同的結果
我忘了做什么?
uj5u.com熱心網友回復:
我相信Nginx 404 錯誤只會在 nginx(或任何 http 服務器)找不到頁面(php 頁面)時引發。
通常php 框架不允許 http 服務器訪問每個檔案和目錄。
他們用他們的路由器自己處理路由。
如果路由器無法匹配任何路由,它將呈現 laravel 的 404 頁面
nginx 借助Url Rewrite將所有 url 傳遞給路由器
可以使用 apache 配置或.htaccess檔案在 apache 中處理 Url Rewrite ,但在 Nginx 的情況下,
如果 Laravel 出現任何錯誤:
- 會出現錯誤或例外
- Laravel 例外處理程式捕獲物件。
- 它將呈現視圖(堆疊跟蹤)視圖
檢查
所以我認為我們必須檢查這些容易出錯的地方:
- Nginx Url 重寫配置
- 檢查
.env有APP_URL=[correct value]&APP_DEBUG=true&APP_ENVIOURMNT=staging然后php artisan config:clear - 檢查是否
App\Exceptions\Handler重定向到不存在的頁面(在 Laravel 應用程式之外):- 也許某些重定向到
localhost&它在您的本地沒問題,但在登臺時您有另一個域。
- 也許某些重定向到
以上,我比較懷疑第一種。
uj5u.com熱心網友回復:
你的 nginx 或 vhost 配置中有這樣的東西嗎?
error_page 404 /404.html;
error_page 500 /500.html;
如果是這樣,您需要注釋掉這一行。
這告訴 nginx 在 HTTP 404 或 500 錯誤時提供自定義靜態 HTML 檔案。所以錯誤不是由 PHP 和 Laravel 呈現的,所以沒有漂亮的錯誤。不過,該錯誤是由 PHP 拋出的,因此您可以在日志中看到它。
如果你有這樣的事情,試著評論它,重啟nginx,然后再試一次。我想我記得曾經遇到過完全相同的問題,這為我解決了。
請注意,您可以為其他 HTTP 代碼設定類似的其他規則。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/360634.html
標籤:拉拉维尔 nginx laravel-5 日志记录 laravel-5.8
下一篇:附加不同風格的文字
