Ответы:
ошибки хранятся в лог-файле nginx. Вы можете указать его в корне конфигурационного файла nginx.
error_log /var/log/nginx/nginx_error.log warn;
На Mac Os X с Homebrew файл журнала был найден по умолчанию в следующем месте:
/usr/local/var/log/nginx
/var/log/nginx/error.log
. Лучше всего проверить nginx.conf
файл и найти error_log
настройки.
Я искал другое решение.
Журналы ошибок, по умолчанию, перед настройкой любой конфигурации, в моей системе (x86 Arch) были найдены в:
/var/log/nginx/error.log
--error-log-path
компиляции trac.nginx.org/nginx/ticket/147
Вы можете использовать lsof
(список открытых файлов) в большинстве случаев, чтобы найти открытые файлы журнала, не зная конфигурации.
Пример:
Найдите PID httpd (та же концепция применима для 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
.
Вы можете прочитать немного больше здесь .
/proc
файловой системе. /proc/${pid}/fd
имеет символические ссылки на открытые файлы, каналы, устройства и т. д.
Запустите эту команду, чтобы проверить журналы ошибок:
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
/opt/nginx/logs/error.log