Cách đây nhiều năm về trước, khi mà các webserver vẫn còn hạn chế nhiều cái thì mỗi khi website bị lỗi trong code nó sẽ đều hiển thị đoạn code bị lỗi ngay trên website khiến ai vào cũng thấy. Ở đoạn đó, đối với người quản trị thì nó sẽ giúp bạn biết được file nào bị lỗi, lỗi ở đoạn code nào. Còn đối với các hacker xấu tính thì họ sẽ khai thác lỗi đó như là một bug để xâm nhập, chẳng hạn như vậy.
Đó là lý do tại sao mà hiện nay các nhà cung cấp host và các thiết lập mặc định của các webserver đều thiết lập ẩn đoạn báo lỗi trong code để tăng tính bảo mật, thay vì hiện lỗi thì bây giờ các lỗi code đa phần đều hiển thị với màn hình trắng, hay còn gọi là lỗi trắng trang.
Muốn fix được website bị lỗi, chúng ta cần biết nguyên nhân, khi biết được nguyên nhân rồi thì dù bạn là newbie hay pro cũng đều tự sửa lỗi được bằng cách đọc file log lưu lại lỗi, ở đó bạn sẽ biết được nguyên nhân chính xác hơn.
Đối với lỗi trắng trang
100% lỗi trắng trang đều xuất phát từ code của bạn như gọi một hàm không tồn tại, code sai cú pháp, viết thừa dấu,…nên để fix được lỗi này thì hãy mở file error log lên mà xem.
File log này thường sẽ có tên dạng là error_log, error.log hoặc đại loại là như vậy và sẽ nằm ở thư mục /public_html đối với Shared Host, còn đối với server riêng (VPS/Dedicated) thì bạn mở file cấu hình domain đang bị lỗi của bạn ra sẽ thấy dòng khai báo log và cứ dò theo đường dẫn đó mà mở lên. Nếu dùng Shared Host bạn không thể tìm ra file log thì hãy gửi hỗ trợ đến bộ phận kỹ thuật để họ tìm giúp.
Trong đó, có 2 loại lỗi PHP là:
- PHP Warning – Cảnh báo với mức độ bình thường, các warning không ảnh hưởng đến việc website bị gián đoạn và mặc định nó sẽ ẩn đi. Nếu bạn thiết lập phần WP_DEBUG trong file wp-config.php thành TRUE thì nó sẽ hiển thị Warning ra ngoài website
- PHP Fatal Error – Đây là lỗi nghiêm trọng mà PHP không thể tiếp tục chạy được nếu gặp phải, là nguyên nhân dẫn đến lỗi trắng trang.
Các lỗi trong file log sẽ được khai báo theo từng dòng, mỗi dòng là một lần báo lỗi, tức là một lượt truy cập vào mà nó báo lỗi thì nó sẽ hiển thị 1 dòng và có thể lặp lại nhiều lần. Để đọc log, bạn nên đọc từ trên xuống dưới tương ứng với sắp xếp từ lỗi cũ tới lỗi mới, hoặc bạn có thể căn cứ vô cái mốc thời gian ở đoạn đầu dòng.
Trong mỗi dòng báo lỗi, bạn sẽ biết được đó là lỗi gì và file nào bị lỗi. Nếu bạn muốn biết ý nghĩa của lỗi thì lên Google mà tìm, cái quan trọng là bạn biết được file nào bị lỗi. Nếu file đó là của plugin thì cứ tắt plugin đó bằng cách đổi tên thư mục plugin là xong.
Đối với lỗi 500
Lỗi 500 là xuất phát từ việc thiết lập của Webserver như sai cú pháp các file cấu hình khiến Webserver không khởi động lại được. Nói chính xác hơn là trình duyệt của bạn không nhận được tín hiệu truyền tải từ Webserver.
Nếu bạn dùng Shared Host thì lỗi này thường có 2 nguyên nhân là bạn chèn nội dung file .htaccess sai cú pháp hoặc là CHMOD file .htaccess bị sai. Hãy fix bằng cách xóa nội dung file .htaccess đi và truy cập lại, nếu nó vẫn báo lỗi thì hãy CHMOD file .htaccess về 755, 644 hoặc 744.
Nếu bạn dùng server riêng (VPS, Dedicated) thì hãy mở file log của webserver ra, nó sẽ nằm trong thư mục /var/log/httpd (Apache) hoặc /var/log/nginx (NGINX) để xem file cấu hình nào bị lỗi, thường thì sẽ phát sinh ra trong lúc bạn táy máy các file cấu hình VirtualHost.
Hãy nên nhớ, tất cả mọi lỗi trong website đều được ghi vào file log bao gồm lỗi 500, lỗi trắng trang, lỗi không upload được ảnh,…..Nên bạn hãy đọc file log thì mới fix được lỗi. Hy vọng bài này sẽ giúp ích cho bạn khi sửa website bị lỗi.
>> Xem thêm: 5 lỗi tuyệt đối nên tránh khi thiết kế website trên mobile