PHP

設定讓 PHP 伺服器顯示錯誤訊息教學

介紹如何更改 PHP 伺服器設定,直接在網頁上顯示 PHP 程式的錯誤訊息。

含有錯誤的 PHP 程式

一般的 PHP 伺服器預設並不會顯示程式的錯誤訊息,這樣的設定對於開發階段來說不是很方便,很容易讓開發者忽略掉許多程式內部的問題。

假設我們有一段 PHP 程式碼如下:

<?php
# 使用不存在的變數
echo "Not Exist: " . $not_exist;
?>

在這段程式碼中使用到了一個未經定義的變數,在撰寫程式時,如果打錯字就會遇到這樣的狀況,而當這種情況發生的時候,網頁上只會看到空白的內容,但是看不出來是哪裡出問題。

沒有任何錯誤訊息

讓 PHP 顯示錯誤訊息

如果希望 PHP 伺服器可以將所有的錯誤訊息直接顯示在網頁上,可以編輯 php.ini 設定檔,修改 display_errors 設定,將其設定為 On

; 將錯誤訊息顯示在網頁上
display_errors = On

修改好之後,重新啟動 PHP 伺服器,如果是在 Linux 系統下,指令會類似這樣:

# 重新啟動 PHP-FPM 伺服器
systemctl restart php7.2-fpm

設定顯示錯誤訊息之後,在網頁上就可以直接看到很詳細的錯誤或是警告訊息。

顯示錯誤訊息

在網頁上顯示錯誤訊息對於程式開發者來說非常方便,但是由於訊息非常豐富,可能就不適合給一般使用者看到這部份,建議可在開發階段顯示錯誤訊息,在實際上線服務之後,就將錯誤訊息隱藏起來,避免擾亂使用者或暴露系統安全性漏洞。

參考資料:MagicLen

Share
Published by
Office Guide

Recent Posts

Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤

本篇介紹如何在 Python ...

9 個月 ago

Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例

本篇介紹如何在 Ubuntu ...

9 個月 ago

Linux 網路設定 ip 指令用法教學與範例

本篇介紹如何在 Linux 系...

9 個月 ago

Windows 使用 TPM 虛擬智慧卡保護 SSH 金鑰教學與範例

本篇介紹如何在 Windows...

10 個月 ago

Linux 以 Shamir’s Secret Sharing 分割保存金鑰教學與範例

介紹如何在 Linux 中使用...

11 個月 ago

Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例

介紹如何在 Linux 系統中...

11 個月 ago