Hướng dẫn enable php error log nginx - kích hoạt đăng nhập lỗi php nginx

Cập nhật lần cuối vào ngày 10 tháng 2 năm 2018 | Một câu trả lời

Các lỗi PHP-FPM được ghi lại theo mặc định trong nhật ký lỗi NGINX. Để xem nhật ký lỗi Nginx và các tệp nhật ký truy cập, chúng tôi có thể sử dụng

server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}
2 để hiển thị 200 mục cuối cùng.

sudo tail /var/log/nginx/error.log -n 200

Hãy cho tôi biết nếu điều này đã giúp. Theo dõi tôi trên Twitter, Facebook và YouTube hoặc 🍊 Mua cho tôi một ly sinh tố.

P.S. Tôi đã tăng doanh thu adsense của mình lên 200% bằng cách sử dụng AI. Đọc đánh giá Ezoic của tôi để tìm hiểu làm thế nào.

1 Trả lời

Để lại một câu trả lời

Địa chỉ email của bạn sẽ không được công bố.

Bình luận

Tên

E-mail

Lưu tên, email và trang web của tôi trong trình duyệt này cho lần tiếp theo tôi nhận xét.

Δ

  1. Vâng, nó đã giúp

    Đáp lại

Khi truy cập một số tập lệnh PHP trên trang web của tôi, tôi sẽ nhận được thông báo lỗi 500 đáng sợ. Tôi muốn biết điều gì sai để sửa nó, nhưng NGINX không đăng nhập bất kỳ lỗi PHP nào trong tệp nhật ký mà tôi đã chỉ định. Đây là khối máy chủ của tôi:

server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}

Lưu ý rằng một số tập lệnh PHP hoạt động tốt và những người khác thì không. Vì vậy, không có vấn đề toàn cầu với PHP, chỉ có một cái gì đó trong các tập lệnh này khiến Nginx ném lỗi 500.

Làm thế nào tôi có thể đi đến tận cùng của điều này? Điều duy nhất trong

server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}
3 là một lỗi về favicon.ICO không được tìm thấy.

Hỏi ngày 13 tháng 8 năm 2012 lúc 18:30Aug 13, 2012 at 18:30

4

Bạn phải thêm phần sau vào cấu hình nhóm PHP-FPM của mình:

catch_workers_output = 1

Bạn phải thêm dòng này vào mỗi nhóm được xác định!

Đã trả lời ngày 20 tháng 8 năm 2012 lúc 23:21Aug 20, 2012 at 23:21

Hướng dẫn enable php error log nginx - kích hoạt đăng nhập lỗi php nginx

FleshgrinderfleshgrinderFleshgrinder

3.6382 Huy hiệu vàng16 Huy hiệu bạc20 Huy hiệu Đồng2 gold badges16 silver badges20 bronze badges

1

Tôi đã có một vấn đề tương tự.

Tôi đã thử triển khai phpmyadmin với PHP-FPM 7.0 và Nginx trên Centos7. Nginx cho tôi thấy 500.html nhưng không có lỗi nào trong bất kỳ tệp nhật ký nào. Tôi đã làm tất cả những điều này

catch_workers_output = 1

display_errors = On

Nhật ký NGINX hoặc nhật ký PHP-FPM không chứa bất kỳ chuỗi lỗi nào.

Và khi tôi nhận xét dòng này trong nginx.conf, tôi đã có thể thấy trong trang trình duyệt những điều sai.

#    error_page 500 502 503 504 /50x.html;
#    location = /50x.html {
#    }

Đó là những gì đã giúp tôi hiểu những rắc rối.

Đã trả lời ngày 13 tháng 7 năm 2017 lúc 12:20Jul 13, 2017 at 12:20

Hướng dẫn enable php error log nginx - kích hoạt đăng nhập lỗi php nginx

Venoelvenoelvenoel

Phù hiệu bằng đồng 17377 bronze badges

server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}
4 ném mọi thứ trong
server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}
5 hoặc tương tự.

Đã trả lời ngày 13 tháng 8 năm 2012 lúc 18:37Aug 13, 2012 at 18:37

Erickzettaerickzettaerickzetta

5792 Huy hiệu bạc4 Huy hiệu đồng2 silver badges4 bronze badges

6

Nhìn vào nginx.conf của bạn để biết định nghĩa

server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}
6. Có lẽ Nginx viết một cái gì đó trong nhật ký lỗi này.

Bạn cũng có thể cho phép đăng nhập vào tệp trên PHP.

Đã trả lời ngày 13 tháng 8 năm 2012 lúc 18:36Aug 13, 2012 at 18:36

1

Đối với tôi, đây dường như là một vấn đề với Upstart, đó là định tuyến các bản ghi cho PHP-FPM đến vị trí tùy chỉnh của riêng nó, ví dụ::

/var/log/upstart/php5-fpm.log

Ngoài ra còn có một số lỗi với Ubuntu chính xác, 12.04 có thể góp phần vào việc thiếu khả năng ghi nhật ký: https://bugs.php.net/bug.php?id=61045 nếu bạn vẫn đang chạy phiên bản đó.

Đã trả lời ngày 21 tháng 7 năm 2015 lúc 16:55Jul 21, 2015 at 16:55

KzqaikzqaiKzqai

1.2784 Huy hiệu vàng17 Huy hiệu bạc32 Huy hiệu đồng4 gold badges17 silver badges32 bronze badges

Khi Php Display_errors bị vô hiệu hóa, các lỗi PHP có thể trả về lỗi NGINX 500.

Bạn nên xem qua nhật ký PHP-FPM của mình, tôi chắc chắn bạn sẽ tìm thấy lỗi ở đó. Với Centos 7:

tail -f /var/log/php-fpm/www-error.log

Bạn cũng có thể hiển thị lỗi PHP. Trong php.ini của bạn, thay đổi:

display_errors = Off

đến :

display_errors = On

Hy vọng nó giúp.

Đã trả lời ngày 22 tháng 1 năm 2016 lúc 0:34Jan 22, 2016 at 0:34

Đây là những gì xảy ra với tôi:

Khi tôi xóa nhật ký lỗi của mình, Nginx nhận thấy rằng nó không còn thiếu. Khi tôi tạo lại tệp này nginx này sẽ không còn nhận ra rằng nó tồn tại, do đó không ghi vào tệp.

Để khắc phục điều này, hãy chạy các lệnh này (tôi đang ở Ubuntu 14.04 LTS):

server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}
0

Nếu điều đó không hoạt động, thì hãy thử:

server {
    listen 80;
    server_name localhost;
    access_log /home/whitey/sites/localhost/logs/access.log;
    error_log /home/whitey/sites/localhost/logs/error.log error;
    root /home/whitey/sites/localhost/htdocs;
    index index.html index.php /index.php;

    location / { 

    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/phpfpm.sock;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        expires max;
    }
}
1

Đã trả lời ngày 12 tháng 8 năm 2015 lúc 7:22Aug 12, 2015 at 7:22

Hướng dẫn enable php error log nginx - kích hoạt đăng nhập lỗi php nginx

4

Nhật ký lỗi PHP PHP ở đâu?

Nhật ký và nhật ký lỗi được đặt tại /var/log/nginx/error.log. Đường dẫn mặc định của nhật ký Nginx phụ thuộc vào hệ điều hành và cài đặt. Bạn có thể ghi đè các cài đặt mặc định và thay đổi định dạng của các thông báo đã đăng nhập bằng cách chỉnh sửa tệp cấu hình nginx/etc/nginx/nginx./var/log/nginx/error. log . Nginx logs file default path depends on the operating system and installation. You can override the default settings and change the format of logged messages by editing the NGINX configuration file /etc/nginx/nginx.

Làm cách nào để bật nhật ký truy cập trong nginx?

Kích hoạt nhật ký truy cập, nhật ký truy cập nginx sẽ được bật theo mặc định.Tuy nhiên, nếu điều này không phải là trường hợp, bạn có thể kích hoạt nó theo cách thủ công trong tệp cấu hình nginx (/etc/nginx/nginx.conf) bằng cách sử dụng Chỉ thị Access_Log trong khối HTTP.enable it manually in the Nginx configuration file ( /etc/nginx/nginx. conf ) using the access_log directive within the http block.

Làm cách nào để tạo nhật ký lỗi PHP?

Có thể thêm lệnh ini_set (log log_errors, đúng) vào tập lệnh PHP để cho phép đăng nhập lỗi trong PHP.Có thể thêm lệnh ini_set ('error_log', $ log_file) vào tập lệnh PHP để đặt tệp ghi nhật ký lỗi.Có thể sử dụng chức năng ERROR_LOG ($ ERROR_MESSAGE) để đăng nhập thông báo lỗi vào tệp đã cho.. The ini_set('error_log', $log_file) command can be added to the php script to set the error logging file. Further error_log($error_message) function call can be used to log error message to the given file.

Làm thế nào tôi có thể xem nhật ký PHP FPM?

Cách kiểm tra trạng thái PHP-FPM..
Tạo một bản sao của www.conf từ /usr/local/etc/php-fpm.d/www.conf to /home/www.conf.....
Bật pm.status_path bằng cách giải nén dòng sau trong tệp /home/www.conf ..
Tạo một bản sao của Tệp cấu hình nginx từ/etc/nginx/sites-A-REABLE/DEFAULT TO/HOME/DEFAULT.....
Thêm vị trí để kiểm tra trạng thái PHP-FPM ..