Проверил: nginx -T | grep listen -- только TCP-порты nginx -T | grep unix: -- только fastcgi_pass ss -nlp | grep -w nginx -- только TCP-порты nginx -T | grep access_log -- только стандартный и combined Единственный сторонний модуль - nchan Возможно, дело действительно в нём, пby Ilya Evseev - Nginx Mailing List - Russian
Дано: nginx 1.18.0-0ubuntu1.2 и access_log по умолчанию. Проблема: некоторые записи в access.log содержат пустой IP клиента. Примеры (обе строки начинаются с пробела, фактические запросы заменил на "..."): - - [25/Jan/2022:07:56:46 +0300] "GET /... HTTPby Ilya Evseev - Nginx Mailing List - Russian
Имеется nginx 1.19.2 со следующей настройкой: server { location / { if ($http_user_agent ~ "TestAgent") { } try_files $uri $uri/ /index.html; } } Проверяю: 1) curl http://127.0.0.1/unknown -- правильно возвращает index.html 2) curl http://127.0.0.1/ -H 'User-Agent: TestAgby Ilya Evseev - Nginx Mailing List - Russian
Имеется Nginx: nginx version: nginx/1.17.8 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) built with OpenSSL 1.1.0 (compatible; BoringSSL) (running with BoringSSL) TLS SNI support enabled В настройках указано: add_header X-SSLEarly $ssl_early_data always; add_header X-SSLSerial $ssl_client_serial always; add_headerby Ilya Evseev - Nginx Mailing List - Russian
Есть Nginx 1.17.8, собран со свежей BoringSSL stable. Запущен на Linux kernel 5.4.10: nginx version: nginx/1.17.8 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) built with OpenSSL 1.1.0 (compatible; BoringSSL) (running with BoringSSL) TLS SNI support enabled configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginby Ilya Evseev - Nginx Mailing List - Russian
Nginx 1.15.11 Система - CentOS 7 с ядром 4.18 /data живёт на Cepf. Обнаружено преждевременное удаление файлов из кэша Nginx. Кэш настроен так: proxy_cache_path /data/user123/nginx_cache keys_zone=user123:3000m max_size=20000g inactive=30d levels=1:2 use_temp_path=off; В /data/user123/nginx_cache сейby Ilya Evseev - Nginx Mailing List - Russian
Имеется Nginx 1.15.6, sendfile включен. Смотрю "strace -p$NGINX_WORKER_PID -e sendfile" и вижу что-то вроде: sendfile(1072, 1130, [737360], 281171) = -1 EAGAIN (Resource temporarily unavailable) sendfile(1072, 1130, [737360] => [932840], 281171) = 195480 sendfile(1072, 1130, [932840], 85691) = -1 EAGAIN (Resource temporarily unavailable)by Ilya Evseev - Nginx Mailing List - Russian
> Вытаскивать миллисекунды в error log - мы в своё время думали, но, кажется, проблем от этого больше, > чем пользы. Особенно с учётом того, что время nginx в норме обновляет один раз за итерацию > event loop'а, и все сообщения междby Ilya Evseev - Nginx Mailing List - Russian
Вижу "timer delta: %M" в выводе "strings nginx-debug", но не вижу ни одной строки с ним в error_log. Упоминания про таймер только такие: 2019/02/05 09:38:23 18108#18108: *5453 event timer add: 15: 75000:435707458 2019/02/05 09:38:23 18108#18108: *5453 event timer del: 15: 435707458 2019/02/05 09:38:23by Ilya Evseev - Nginx Mailing List - Russian
Пытаюсь отладить тормоза на одном из серверов Nginx. Включил "error_log ... debug" Проблема в том, что записи туда пишутся с секундной точностью. Есть ли возможность обеспечить миллисекундную? Написал патч, но ещё не провеby Ilya Evseev - Nginx Mailing List - Russian
Intel и Alibaba создали свои ветки Nginx'a, которые используют для SSL асинхронный режим и аппаратную акселерацию QAT. Было ли обсуждение презентации Интела на NginxConf? Планируется принимать их наработки в Nginx? Или асинхронный режиby Ilya Evseev - Nginx Mailing List - Russian
А парсинг конфига - это операция по определению однопоточная? Её никак не распараллелить? Пользователи меняют настройки своих сайтов довольно часто, при этом автоматически перестраивается конфиг nginx'a и вызывается nginxby Ilya Evseev - Nginx Mailing List - Russian
Имеется конфигурация с ~500-600 сайтов, из них примерно 10% с поддержкой https, в остальных только http. wildcard-ключ с сертификатом указан в блоке "http". Обратил внимание, что "nginx -t" и "nginx -s reload" стали отрабатывать секby Ilya Evseev - Nginx Mailing List - Russian
Обычно RPM появляется сразу, но 1.14 вышел 10 дней назад, а RPM до сих пор нет. Когда ориентировочно он появится?by Ilya Evseev - Nginx Mailing List - Russian
Есть Nginx-frontend, он может вернуть Error 502 "Bad Gateway", если backend недоступен. Есть Nginx-backend, он тоже может вернуть Error 502. Как научить Nginx-frontend возвращать в случае недоступности backend'a не 502, а 523 "Origin is unreachable"?by Ilya Evseev - Nginx Mailing List - Russian
Дано: nginx 1.13.5 под CentOS 7.3 В perf top: Children, Self Command, Shared Object, Symbol - 27,63% 0,00% nginx [.] 0000000000000000 - 0 24,87% ngx_resolver_lookup_name.isra.1 - 2,76% __libc_writev Для ngx_resolver_lookup_name.isra.1 смотрю "Zoom into nginx thread" -- вby Ilya Evseev - Nginx Mailing List - Russian
Когда ошибка случается, h->body_start почему-то всегда больше c->body_start ровно на один байт: $ perl -ne 'print "$1 $2\n" if /has too long header \(actual = (\d+), required = (\d+)\)/' /var/log/nginx/error.log 730 729 734 733 732 731 724 723 734 733 737 736 722 721 729 728 729 728 750 749 750 749 750 749 Сby Ilya Evseev - Nginx Mailing List - Russian
У нас уже включено: proxy_cache_use_stale updating error timeout invalid_header http_500 http_502 http_503 http_504; proxy_cache_lock on; proxy_cache_lock_age 1m; proxy_cache_lock_timeout 1m;by Ilya Evseev - Nginx Mailing List - Russian
Патч вылечил ошибку с подвисанием. Но как быть с "too long header"?by Ilya Evseev - Nginx Mailing List - Russian
Написал патч для более подробной диагностики: https://gist.github.com/ilyaevseev/f2c57519db829329f8e9f9aff5d51789 Попутно нашел ошибку в Nginx: 1) wget http://nginx-frontend/cached-upstream-file 2) ищем на nginx-сервере файл в кэше, удаляем всё, начиная от пары последних строкby Ilya Evseev - Nginx Mailing List - Russian
nginx/1.13.4 64bit под CentOS7. Редко, но регулярно выдаёт ошибку "cache file ... has too long header" Прочёл всё, что написано по данному поводу: 1) https://forum.nginx.org/read.php?21,243579,243589#msg-243589 2) http://nginx.2469901.n2.nabble.com/cache-file-has-too-long-header-bug-td7594976.html proxy_buffer_sizby Ilya Evseev - Nginx Mailing List - Russian
То есть получается, что лучше всего использовать только net.ipv4.tcp_wmem и вообще никогда не указывать "listen ... sndbuf=..." в nginx.conf, чтобы он не вызвал setsockopt и не отключал автонастройку в ядре?by Ilya Evseev - Nginx Mailing List - Russian
> > В данном случае хороший ответ на этот вопрос не прослеживается, > так как автотюнинг буферов сейчас во всех популярных операционных > системах есть, в том числе на линуксе. > Автотюнинг буферов - это что имеby Ilya Evseev - Nginx Mailing List - Russian
Написал небольшой патч, который автоматически увеличивает размер буфера отправки, если sendfile вернул EAGAIN. Вызывается из https://trac.nginx.org/nginx/browser/nginx/src/os/unix/ngx_linux_sendfile_chain.c#L265 Вопросы: 1) имеет смысл доводить патч до такогоby Ilya Evseev - Nginx Mailing List - Russian
Is ngx_resolver worker-local, or shared between workers?by Ilya Evseev - Ideas and Feature Requests
Currently resolver caches positive DNS answers only. Wrong names are not cached, so each worker reports about each wrong name. This causes spam in logs, especially when we use nginx-upstream-dynamic-servers module. Caching of negative DNS responses should solve that.by Ilya Evseev - Ideas and Feature Requests
Имеется плагин, который через fork запускает NGX_PROCESS_HELPER для выполнения долгой операции. Фоновый процесс иногда не реагирует на "nginx -s reopen" и продолжает держать открытыми все log-файлы. Это мешает их ротации и парсингу.by Ilya Evseev - Nginx Mailing List - Russian