Hướng dẫn dùng nginx error_log trong PHP
Chỉ thị error_log được tìm thấy trong tệp cấu hình nginx.conf của Nginx, tệp cấu hình PHp-fPM và php.ini. Bài viết này cố gắng giải thích ngắn gọn sự khác biệt và liên kết giữa ba cấu hình này.
Từ tài liệu trên, rõ ràng ban đầu error_log có mức độ ưu tiên cao hơn trong php.ini, vì vậy hãy lần lượt thử nghiệm với các kết hợp cấu hình này. Các giá trị cấu hình của mỗi error_log như sau:
1. Khi ba giá trị được cấu hình cùng một lúc, nhật ký lỗi PHP sẽ được ghi vào tệp được chỉ định bởi error_log trong php.ini
Nhưng điều gì sẽ xảy ra nếu error_log chỉ định một tệp không có quyền
ghi, nó sẽ được đăng nhập vào tệp error_log của nginx hoặc PHP-FPM? Câu trả lời là không và thông báo lỗi bị mất vì không thể ghi được.
3. Vì nginx error_log không hỗ trợ tắt máy nên không thể so sánh mức độ ưu tiên của error_log giữa các Nginx. conf và
PHP-fpm. Trên thực tế, error_log trong PHP-fpm conf không được sử dụng để ghi lại các thông báo lỗi PHP, mà để ghi lại một số thông tin thời gian chạy của chính quá trình PHP-FPM.
Ví dụ: nếu bạn cấu hình php_admin_value[error_log] trong PHp-fpm.conf = /var/log/php-fpm/www-error.log và định cấu hình error_log trong php.ini, bạn sẽ thấy rằng thông báo lỗi PHP sẽ được ghi vào / var / log / php- tệp fpm / www-error.log Một số khung công tác sử dụng set_exception_handler và set_error_handler, cũng như register_shutdown_ Chức năng để đặt lại việc xử lý ngoại lệ và báo cáo lỗi, đồng thời có thể ghi nhật ký lỗi vào một nơi khác, vì vậy trong môi trường phát triển, hãy tạm thời mở display_errors. Đây là cách nhanh nhất để xác định vị trí lỗi. Đó là tất cả |