[英]Where can I find the error logs of nginx, using FastCGI and Django?
錯誤存儲在 nginx 日志文件中。 可以在nginx配置文件的根目錄指定:
error_log /var/log/nginx/nginx_error.log warn;
在帶有Homebrew 的Mac OS X 上,日志文件默認位於以下位置:
/usr/local/var/log/nginx
在大多數情況下,您可以使用lsof
(打開文件列表)在不知道配置的情況下查找打開的日志文件。
例子:
找到httpd
的PID(同樣的概念適用於nginx和其他程序):
$ ps aux | grep httpd
...
root 17970 0.0 0.3 495964 64388 ? Ssl Oct29 3:45 /usr/sbin/httpd
...
然后使用lsof
和 PID 搜索打開的日志文件:
$ lsof -p 17970 | grep log
httpd 17970 root 2w REG 253,15 2278 6723 /var/log/httpd/error_log
httpd 17970 root 12w REG 253,15 0 1387 /var/log/httpd/access_log
如果lsof
打印任何內容,即使您希望找到日志文件,請使用sudo
發出相同的命令。
你可以在這里多讀一點。
運行此命令以檢查錯誤日志:
tail -f /var/log/nginx/error.log
我的 ngninx 日志位於:
/usr/local/var/log/nginx/*
您還可以檢查您的nginx.conf
以查看是否有任何指令轉儲到自定義日志。
運行nginx -t
來定位你的nginx.conf
。
# in ngingx.conf
error_log /usr/local/var/log/nginx/error.log;
error_log /usr/local/var/log/nginx/error.log notice;
error_log /usr/local/var/log/nginx/error.log info;
Nginx 通常設置在/usr/local
或/etc/
。 服務器也可以配置為將日志轉儲到/var/log
。
如果您有 nginx 安裝的備用位置並且所有其他位置都失敗了,您可以使用find
命令來定位您選擇的文件。
find /usr/ -path "*/nginx/*" -type f -name '*.log'
,其中/usr/
是您希望開始搜索的文件夾。
Linux 服務器上的日志位置:
Apache – /var/log/httpd/
IIS – C:\inetpub\wwwroot\
Node.js – /var/log/nodejs/
nginx – /var/log/nginx/
Passenger – /var/app/support/logs/
Puma – /var/log/puma/
Python – /opt/python/log/
Tomcat – /var/log/tomcat8
cd /var/log/nginx/
cat error.log
在終端中鍵入此命令:
sudo cat /var/log/nginx/error.log
我在/usr/local/nginx/logs/*
找到了它。
在 nginx 配置文件中設置訪問日志的位置是一個很好的做法。 使用 acces_log /path/ 像這樣。
keyval $remote_addr:$http_user_agent $seen zone=clients;
server { listen 443 ssl;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
if ($seen = "") {
set $seen 1;
set $logme 1;
}
access_log /tmp/sslparams.log sslparams if=$logme;
error_log /pathtolog/error.log;
# ...
}
對於Mac OS用戶,您可以在終端中輸入nginx -help
。
nginx version: nginx/1.21.0
Usage: nginx [-?hvVtTq] [-s signal] [-p prefix]
[-e filename] [-c filename] [-g directives]
Options:
-?,-h : this help
-v : show version and exit
-V : show version and configure options then exit
-t : test configuration and exit
-T : test configuration, dump it and exit
-q : suppress non-error messages during configuration testing
-s signal : send signal to a master process: stop, quit, reopen, reload
-p prefix : set prefix path (default: /opt/homebrew/Cellar/nginx/1.21.0/)
-e filename : set error log file (default: /opt/homebrew/var/log/nginx/error.log)
-c filename : set configuration file (default: /opt/homebrew/etc/nginx/nginx.conf)
-g directives : set global directives out of configuration file
然后,您可以找到一些配置和日志文件的默認路徑,在這種情況下:
/opt/homebrew/log/nginx/error.log
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.