ตั้งค่า php ให้แสดงข้อความ error

อาการปัญหา: นำโค้ดอัพโหลดขึ้นเครื่องเว็บเซิร์ฟเวอร์จริง ลองทดสอบการใช้งาน ปรากฎว่าเจอแต่หน้าว่างๆ ขาวๆ

ตอบ: เซิร์ฟเวอร์ปิดการทำงานการแสดงผลข้อความ error ต่างๆ ของ php เพื่อความปลอดภัย ต้องทำการเปิดก่อนที่ php.ini มีขั้นตอนดังนี้

1.แก้ไขไฟล์ php.ini  

sudo nano /etc/php5/apache2/php.ini

2.เปลี่ยนค่า display_error จาก Off เป็น On

; Print out errors (as a part of the output). For production web sites,
; you're strongly encouraged to turn this feature off, and use error logging
; instead (see below). Keeping display_errors enabled on a production web site
; may reveal security information to end users, such as file paths on your Web
; server, your database schema or other information.
display_errors = On

3.restart apache

sudo service apache2 restart

หลังจากแก้ไขปัญหาเรียบร้อยแล้ว ควรเปลี่ยนกลับเป็น Off เพื่อความปลอดภัย

หากเบื่อไม่อยากเปลี่ยนกลับไปเปลี่ยนกลับมา มีอีกวิธีการคือให้สร้างไฟล์ php แล้วค่อย include สำหรับไว้แสดงผล error โดยเฉาะให้ใส่สคริปท์ดังนี้

<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);

//กรณีต้องการเก็บ log file
 ini_set('log_errors', 1);
 ini_set('error_log', dirname(__FILE__) . '/error_log.txt');

Leave a Reply