Re: nginx-ldap-auth

2020-04-19 Пенетрантность denis
Я так понимаю, ldap не использует никто, даже разработчики собственный модуль... Если оно официально мертво, может закрыть репу https://github.com/nginxinc/nginx-ldap-auth?15.04.2020, 03:30, "de...@webmaster.spb.ru" :Добрый деньЕсть в амазоне кластер, с приватной сетью, вход через OpenVPN, после входа у всех один внутренний айпи.Используем nginx-ldap-auth, но у меня получилось завести его в 2 режимах:1) авторизуется 1 человек, и все кто через впн могут работать от его имени (cache включен?)2) Вроде с авторизацией всё хорошо, но на каждый запрос через nginx идёт десяток запросов в AD Можно сделать, чтобы выставлялось что-то более уникальное? Я так понимаю, мне в браузер нужна кука. И хотя есть отдельная опция proxy_set_header X-CookieName "nginxauth"; - я не вижу чтобы она работала как надо. Что-то забыто? Или штатно это не сделать и нужны модули вроде https://github.com/sto/ngx_http_auth_pam_module ?,___nginx-ru mailing listnginx-ru@nginx.orghttp://mailman.nginx.org/mailman/listinfo/nginx-ru___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

nginx-ldap-auth

2020-04-14 Пенетрантность denis
Добрый деньЕсть в амазоне кластер, с приватной сетью, вход через OpenVPN, после входа у всех один внутренний айпи.Используем nginx-ldap-auth, но у меня получилось завести его в 2 режимах:1) авторизуется 1 человек, и все кто через впн могут работать от его имени (cache включен?)2) Вроде с авторизацией всё хорошо, но на каждый запрос через nginx идёт десяток запросов в AD Можно сделать, чтобы выставлялось что-то более уникальное? Я так понимаю, мне в браузер нужна кука. И хотя есть отдельная опция proxy_set_header X-CookieName "nginxauth"; - я не вижу чтобы она работала как надо. Что-то забыто? Или штатно это не сделать и нужны модули вроде https://github.com/sto/ngx_http_auth_pam_module ?___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: HACK NGINX+DAV

2016-12-03 Пенетрантность Denis Kot
А управляете Вы этим всем с планшета или телефона?

Denis Kot
Skype: kot.denis


3 декабря 2016 г., 11:35 пользователь itcod 
написал:

> У меня своих только боевой и девел-серв на которых по феншую "ничего
> лишнего". Так что варианты с vagrant/ libvirt/etc отпадают. Идеально imho
> VPS'ку гдето в инете с привычным федоркой:)
>
> Posted at Nginx Forum: https://forum.nginx.org/read.
> php?21,271302,271313#msg-271313
>
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

include в upstream

2016-08-09 Пенетрантность Denis Khabarov
> Изменения в nginx 1.9.8   08.12.2015
>*) Добавление: директива include в блоке upstream.Пытаюсь использовать:  upstream docker_containers {    include backends.conf;}backends.conf: server addr:2000;Получаю ошибку: # nginx -tnginx: [emerg] directive "server" has no opening "{" in /etc/nginx/conf.d/backends.conf:1nginx: configuration file /etc/nginx/nginx.conf test failedЕсли указывать без server, просто адрес, то nginx: [emerg] unknown directive "addr:2000" in /etc/nginx/conf.d/servers.conf:1nginx: configuration file /etc/nginx/nginx.conf test failed nginx version: nginx/1.10.1built by gcc 5.3.1 20160413 (Ubuntu 5.3.1-14ubuntu2) built with OpenSSL 1.0.2g-fips  1 Mar 2016TLS SNI support enabledconfigure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-http_auth_request_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_perl_module=dynamic --add-dynamic-module=debian/extra/njs-1c50334fbea6/nginx --with-threads --with-stream --with-stream_ssl_module --with-http_slice_module --with-mail --with-mail_ssl_module --with-file-aio --with-ipv6 --with-http_v2_module --with-cc-opt='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--as-needed' nginx стоит с официального репозитория. Скажите плиз. Что не так?  -- Best regards,Denis Khabarov - https://saymon21-root.pro ___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Зависание nginx из-за memcached

2016-05-25 Пенетрантность denis

25.05.2016 13:42, Vadim Osipov пишет:


P.S. извините, за изврат :) Вы наверное и не такого насмотрелись, что люди
вытворяют
"Изврат" люди вытворяют, когда надо например получить параметр из POST 
без lua, а здесь так, цветочки.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

gzip и сжатые данные на входе

2016-04-08 Пенетрантность denis
Как себя должен вести nginx, если от бэкенда ему пришёл уже сжатый 
ответ, и при этом активен gzip on; ? Просто пробросить данные клиенту? 
Разжать и повторно сжать по новым правилам? Как этим поведением управлять?

Анализируется ли поле Content-Encoding от бэкенда?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx и lua

2016-03-19 Пенетрантность denis

16.03.2016 18:08, Валентин Бартенев пишет:


Количество строк кода на Си в nginx:

nginx $ sloccount src

ansic:   121577

Количество строк кода на Си в lua-модуле для nginx
(это только модуль, без самого lua-интерпретатора):

lua-nginx-module $ sloccount src

ansic:34276

т.е. объем одного lua-модуля превышает четверть nginx-а
со всеми его 50+ модулями.

Выводы каждый может сделать сам.
вывод - много кода это плохо? Что мешает тогда взять этот код и 
почистить его как следует? Или это таки нужный код, который нельзя так 
выкинуть? И заодно весь софт, где больше миллиона строк, включая ядро 
линукса.
А по делу - если есть код типа ngx_http_subrequest(), что мешает 
привести код в норму?
Понимаю что хочу многого, но почему до сих пор нет нормальных лёгких 
_современных_ модулей? Желательно не js, очень он.. попахивает, луа 
лучше.  Ну и хорошо бы, чтобы была предкомпиляция, чтобы код не 
интерпретировался при каждом запуске с нуля, это чересчур накладно.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Возможна ли переадресация с /kolesa/index.php на /kolesa/

2016-03-18 Пенетрантность denis

17.03.2016 14:56, e.lodyanov пишет:

Переадресация срабатывает, но сайт не грузится, пишет на странице обнаружена
циклическая переадресация.
всё правильно делает. Вероятно, нужно просто скрывать index.php из 
адреса, это делается совсем не редиректом. И начинать надо с апача и 
htaccess, обычно чпу настраиваются там.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx и lua

2016-03-15 Пенетрантность denis

14.03.2016 22:37, Vadim A. Misbakh-Soloviov пишет:

Lua - сторонний модуль.  И я бы не рекомендовал использовать его
без нужды, качество кода там - сомнительное.

Ну, какой есть. Если бы был Lua-модуль от команды NgX — я бы был в
первых рядах, что называется, "писающих кипятком от счастья". Но, увы,
от команды NgX есть только NJS (и тот не в стандартной коробке, и, к
тому же, не смотрел как он там с поддержкой сборки в качестве стороннего
модуля). А Lua есть только от Yichun'а Zhang'а, увы ☹…

// с другой стороны, я, конечно, не перелопачивал *весь* код ngx-lua, но
в тех местах, где я контрибьютил — код вполне нормальный, на мой
админский (не программерский) взгляд ☺

"жрите кактус, то есть перл" :)
Вероятно, тут как и с модульностью, лет через 5-10 таки запилят свою 
реализацию, и где не надо будет 3 страницы кода для обработки одной 
POST-переменной, как сейчас с перлом...


За всё это время могли бы уже привести "сомнительный" код к нормальному 
виду и перестать мучать народ перлом :)


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: server name и динамические поддомены

2016-01-27 Пенетрантность denis

27.01.2016 10:46, tetramin пишет:

Откуда берётся этот www? В скриптах сайта нет и не было такого никогда.

а в htaccess?

Можно включить дебаг лог и смотреть полный процесс обработки, но там 
очень много мусора.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Значение лимита коннектов с переменной

2016-01-04 Пенетрантность denis

03.01.2016 22:03, kelewind пишет:

Добрый день, столкнулся тут с одной даже не проблемой. Скорее непоняткой.

Я так понимаю, директива

limit_conn

Не принимает значение переменной в качестве количества одновременных
коннектов?

Я имею ввиду такую ситуацию, например

1) Определили зоны
2) Установили кастомную переменную set $limit 1;
3) Сделали лимит, например
limit_conn perip (это имя зоны, определённой в пункте 1) $limit;

Мне на данный момент ругается, что неправильное значение $limit.

Буду признателен за прояснение  - это у меня руки крюки или это
действительно не предусмотрено стандартным функционалом. Я понимаю, что lua
like способом, наверное можно это решить. Но хотелось бы как можно проще.

Заранее спасибо.

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,263836,263836#msg-263836

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

в рассылке было не раз.
Вариант - через map выставляем ключ или пустоту, без ключа нет лимита.

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Не запустился nginx при старте OpnenVZ контейнера

2015-12-25 Пенетрантность denis

25.12.2015 4:03, Gena Makhomed пишет:

On 25.12.2015 0:51, Alex Vorona wrote:


Посмотрите когда в системе после запуска "Starting LSB: Bring
up/down networking..." появляется IP на интерфейсе на самом деле.


Проблема в том, что nginx запускается еще до того, как поднята сеть:


как костыль - выставить net.ipv4.ip_nonlocal_bind=1

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Балансировка нагрузки веб-серверов

2015-12-18 Пенетрантность denis

18.12.2015 11:14, Andrei Ladyka пишет:

Доброго времени суток.
В данный момент я пишу работу по балансировке нагрузке веб-серверов.
Хотелось бы поучаствовать в разработке Nginx (сам на своих сайтах использую
его очень давно) в данном направлении, не могли бы указать на проблемы,
которые ещё не исправлены или как-то направить меня на правильный путь.
Спасибо за понимание и внимание.
запилить "кошерный" луа? Версия которая сейчас собирается некошерна, а 
встроенный перл откровенно убог.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: отключение sslv3

2015-12-17 Пенетрантность denis

17.12.2015 17:38, Maxim Dounin пишет:

Hello!

On Thu, Dec 17, 2015 at 05:24:51PM +0300, denis wrote:


Можно в доках более явно указать, что для отключения sslv3 мало прописанного
в домене ssl_protocols TLSv1..., ему надо повторить это же в секцию http.
Были сильно удивлены таким поведением. А что делать, если одному сайту нужен
ссл, а всем оставшимся нет?
Или это бага?
1.8.0, центос 6.7, ваша репа (суффикс ngx)

Чтобы отключить SSLv3, его надо отключить в сервере по умолчанию
для конкретного listen-сокета.  В виртуальном сервере этого
сделать нельзя, т.к. в момент установления SSL-соединения не
известно, к какому виртуальному серверу будет HTTP-запрос.

Идея понятна, но в доках такого не увидел. Может просто плохо 
смотрел?... А момент действительно сложный. Ещё отладка усложняется 
отсутствием вывода а-ля apachectl -S, кто где дефолтный и какие там 
опции. И до кучи получаем радость, если добавим ещё домен на той же 
паре, и при этом нет listen ... default - и он станет новым дефолтом. Вы 
не представляете сколько такая подстава может выпить крови.
Имхо, нужно жирно отметить в доках, что указывать надо именно в хттп 
секции, а если нужен иной список - описывать отдельный location с 
отдельной парой адрес-порт и явно заданным дефолтом. Хотя мы быстро 
поняли что не так, всего 3 часа ушло.


"Использовать для них разные наборы адрес-порт."
Так и сделали.

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

отключение sslv3

2015-12-17 Пенетрантность denis
Можно в доках более явно указать, что для отключения sslv3 мало 
прописанного в домене ssl_protocols TLSv1..., ему надо повторить это же 
в секцию http. Были сильно удивлены таким поведением. А что делать, если 
одному сайту нужен ссл, а всем оставшимся нет?

Или это бага?
1.8.0, центос 6.7, ваша репа (суффикс ngx)

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ограничить количество файлов в кеше

2015-12-17 Пенетрантность Denis Kot
Есть ли возможно сказать nginx какое максимальное количество файлов в кеше
создавать?
Сейчас у нас картинка такая:

# df -i
Filesystem  Inodes  IUsed  IFree IUse% Mounted on
...
/dev/xvdb  1001712 979750  21962   98% /mnt

при этом:
# df -h
Filesystem  Size  Used Avail Use% Mounted on
...
/dev/xvdb15G  4.0G   11G  29% /mnt

на /mnt ничего кроме кеша nginx нет.

Denis Kot
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Форсирования gzip для POST реквестов в прокси

2015-12-11 Пенетрантность denis

11.12.2015 14:05, ShivaS пишет:

нода стоит локально за Nginx, т.е. в моем случае скорость порта это скорость
лупбека, т.е. фактически проблем нет
то есть 1 машина, внутри которой всё и бегает? Тогда зип это вообще 
пустой расход проца.. Что-то там явно не в порядке. Может перейти на сокеты?


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Подсети в server_name?

2015-12-11 Пенетрантность denis
Можно указать в server_name 127.0.0.1 или айпи, а что делать если надо 
прописать туда подсеть? Например /16 или /28. Я так понимаю, тогда нужно 
извращаться с регэкспами, и всё, больше методов нет?
И когда надо /24, то есть 127.0.0.* - так же тоже некорректно, да и 
просто 127.0.0. вероятно тоже нельзя. Тоже только по алгоритму выше?


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Форсирования gzip для POST реквестов в прокси

2015-12-11 Пенетрантность denis

10.12.2015 22:56, ShivaS пишет:

мне нужна скорость и память, с процессором нет проблем
данные json на 5-6к, backend - nodejs

вопрос можно или нет (я не нашел как)
респонсы то out of box , а вот пост реквест не пойму как прикрутить
написать свой модуль наверное. Но действительно - внутри своей сети 
проще и  правильнее просто добавить скорости, агрегацией или более 
высокой скоростью портов


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx -v и stdout

2015-12-09 Пенетрантность denis

09.12.2015 0:46, greenh пишет:
В процессе развертывания и дебага случайно выяснилось, что nginx -V и 
nginx -v вываливают ответ в stdout. Если не секрет - зачем? ))


а куда еще? Как некоторый говнософт в stderr, чтобы для грепа и 
скриптовой обработки приходится городить левые конструкции с 2>&1? Руки 
за такое вырывать и вставлять туда, где они должны быть.

Или куда-то ещё?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Помогите реализовать фильтрацию по HEADER

2015-12-04 Пенетрантность denis

04.12.2015 13:07, Dmitry Pryadko пишет:

Точнее, вот так (tested):

только одна мленькая проблемка: lua надо компилировать. По 
непонятным причинам штатно его нет, хотя это единственно вменяемый метод 
обрабатывать те же пост запросы.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

инвалидация кэша пост запросом?

2015-12-02 Пенетрантность denis

Добрый день.

Есть ли в принципе механизмы инвалидации части кэша для адреса/локейшена?
Есть рест интерфейс, хотим кэшировать некие урлы для гетов, но так, 
чтобы пост/пут на этот же адрес сбросил все кэши для данного пути. Суть 
в том, информация о клиенте - часть url, поэтому для разных клиентов 
будут разные адреса.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: proxy_bind, макросы и др

2015-11-17 Пенетрантность denis

17.11.2015 18:33, Maxim Dounin пишет:


Не надо использовать регулярные выражения там, где без них можно
обойтись.  Это потом приводит к большим проблемам с поддержкой
конфигурации, т.к. в результате возникает требуется соблюдение
порядка location'ов.
Это была одна из причин, почему мне было так необходимо "вывод итоговой 
конфигурации", и что появилось только в 9 ветке, так как для нас порядок 
локейшенов стал проблемой более 5 лет назад. Легко решается префиксами 
типа ___ или 000_, и чем "глубже" поддомен/локейшен, тем больше нулей. И 
снова столкнулись с необходимостью вывода итога, когда конфиги, 
скопированные из freebsd, работали только частично в дебиане. Оказалось, 
какие-то деБиллы решили что файл не может начинаться с _ и должен 
игнорироваться, фиксится нормальной не изгаженной версией nginx-a. Но 
крови эта проблема много попортила.
Но если все эти моменты помнить - порой лучше 1 локейшен/поддомен с 
регэкспами, чем тьма простых (у нас для сео-нужд локейшенов было бы 
далеко за тысячу)


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: proxy_bind, макросы и др

2015-11-17 Пенетрантность denis

17.11.2015 16:52, Softer пишет:

Добрый день.

А чем так плохо?


тем что надо читать доки ))
Более того, даже в сервер-нейм можно применять регэкспы. "есть нюансы", 
но вполне работает.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Как создать под домен?

2015-11-09 Пенетрантность denis

09.11.2015 15:12, Maxim Konovalov пишет:

[...]

В свою очередь, у нгинха нет валидации итога глазами, то есть
нельзя вывести склеенный конфиг, "намэтонинада", и отладка
поддоменов может быть мучительной.

Начиная с 1.9.2 есть "-T".

http://nginx.org/ru/docs/switches.html


И даже более того, c --with-debug можно сдампить конфигурацию из
процесса/core dump

https://www.nginx.com/blog/new-debugging-features-probe-nginx-internals/


Щикарно! Жить станет чуть проще.

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Как создать под домен?

2015-11-09 Пенетрантность denis

09.11.2015 14:48, Andrei Belov пишет:

Начиная с 1.9.2 есть "-T".
Неужели таки сдались? Я эту опцию просил ещё лет 8 назад, и с тех пор не 
раз. Позиция была всегда "не хотим"


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Как создать под домен?

2015-11-09 Пенетрантность denis

09.11.2015 13:44, shureg пишет:

ALex_hha, попробовал вписать не работает... :(
  Рестарт делал
Включаю телепата: основной домен описан не как site.ru www.site.ru а как 
*.site.ru или просто .site.ru


Для начала, переименовываем конфиг поддомена так, чтобы он всегда 
читался раньше основного, например 000_site.ru.conf. Раньше я поддомены 
начинал с _, но мартышки в дебиане сделали всё с _ игнорировать, на чём 
много нервов потратил, на основных серверах у нас freebsd и там это 
работало.

Теперь даже с основным доменом с точки будет работать.

В свою очередь, у нгинха нет валидации итога глазами, то есть нельзя 
вывести склеенный конфиг, "намэтонинада", и отладка поддоменов может 
быть мучительной.


Ну и в таких случаях обычно прикладывают конфиги, лучше на пастебин, 
сюда только если кусочки


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Проблемы с бэкэндом на http2

2015-10-19 Пенетрантность denis

19.10.2015 17:25, Evgeniy Berdnikov пишет:

Это имеет смысл лишь
  для клиентов с большим rtt до сервера. В локалке, между фронтэндом
  и бэкендом при малых rtt, даёт лишь бессмысленные накладные расходы,
  в том числе на шифрование, если оно есть.
У топикстартера речь шла о случаях, когда rtt модет быть большим, в 
частности когда сам бэкенд находится далеко и бегает через всякие анти-ддосы


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: брать файл только из кеша

2015-10-14 Пенетрантность Denis Kot
Спасибо. Появилась другая проблема. Если proxy_cache_lock_timeout оставить
по умолчанию 5s, и файл очень большой (например 600 мб) то клиенты получают
битые файлы. Nginx возвращает ответ 200, но размер файла в логе для каждого
клиента разный, хотя это один и тот же файл. Версия nginx/1.4.6 (Ubuntu).

Denis Kot
Skype: kot.denis


13 октября 2015 г., 15:23 пользователь Валентин Бартенев 
написал:

> On Tuesday 13 October 2015 15:16:17 Denis Kot wrote:
> > Привет.
> >
> > Есть хранилище файлов, которое отдает файлы по http.
> > Есть так же некоторое количество клиентов, которые обращаются в одному и
> > тому же файлу в одно время. Т.к. хранилище в данный момент сильно
> нагружено
> > хочется его разгрузить установив перед ним кеширующий nginx.
> > Если запросы к файлу идут один за одним, то все нормально, ответ берется
> из
> > кеша. Но если запросы приходят одновременно, то nginx за файлом ходит к
> > хранилищу (по крайней мере заголовок X-Cache-Status показывает MISS).
> > Хочется этого избежать и сделать так, что бы файл из хранилища тянулся
> > только один раз, а потом отдавался из кеша. Например ставить клиентов в
> > очередь пока nginx не закеширует файл.
> >
> > Можно ли такое сделать?
> >
>
> http://nginx.org/r/proxy_cache_lock/ru
>
> --
> Валентин Бартенев
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

брать файл только из кеша

2015-10-13 Пенетрантность Denis Kot
Привет.

Есть хранилище файлов, которое отдает файлы по http.
Есть так же некоторое количество клиентов, которые обращаются в одному и
тому же файлу в одно время. Т.к. хранилище в данный момент сильно нагружено
хочется его разгрузить установив перед ним кеширующий nginx.
Если запросы к файлу идут один за одним, то все нормально, ответ берется из
кеша. Но если запросы приходят одновременно, то nginx за файлом ходит к
хранилищу (по крайней мере заголовок X-Cache-Status показывает MISS).
Хочется этого избежать и сделать так, что бы файл из хранилища тянулся
только один раз, а потом отдавался из кеша. Например ставить клиентов в
очередь пока nginx не закеширует файл.

Можно ли такое сделать?

Denis Kot
Skype: kot.denis
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: javascript in nginx

2015-09-25 Пенетрантность denis

24.09.2015 20:11, Gena Makhomed пишет:


Средний сайт только за хостинг в год платит $1500/yr
или даже больше, так что цены там не очень большие.
"средний сайт" за хостинг платит 30-50 долларов, даже если это 
выделенный сервер, спасибо хецнеру. И даже если аренда юнита - мы платим 
по 3к за юнит, по курсу 65р это что-то около 40 долларов. И увеличивать 
расходы в 4 раза только ради прокси... оно того не стоит, совсем. 
Профильных сайтов, кому нгинх реально нужен как воздух - процентов 5 в 
"средних сайтах", если не 1% вообще. Всякие крупные видеохостинги и проч 
- другая сфера.



Учитывая то, насколько Lua-модуль кривой и сложный,
- такая цена $1500/yr вполне оправдана за его поддержку.
$15/y - за модуль я ещё могу понять и даже обосновать, но даже 150 оно 
не стоит вообще.


Про кривость пожалуйста подробнее.

Более того, он уже есть и бесплатен, потому что написан даже не командой 
нгинха, а командой китайцев из taobao. Продавать его после этого было бы 
свинством. Собственно, там он уже и отлажен и проверен, на действительно 
хайлоаде.


Проблема в том, что модуль нужен, как минимум как thread-safe, быстрый, 
и с дополнительными плюшками вроде лёгкого парсинга post. Также с ним 
можно выкинуть ряд левых модулей типа всяких echo.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: javascript in nginx

2015-09-24 Пенетрантность denis

24.09.2015 10:05, Vadim A. Misbakh-Soloviov пишет:

Лучше бы на lua это время потратили.

А зачем его тратить, если Yichun Zhang уже всё сделал и всё прекрасно
работает?
модуль может и работает, но штатно его нет, поэтому о нём мало кто 
знает. А ведь это пожалуй единственный лёгкий способ обработки POST 
данных в запросе (то, что на перле - пара файлов и пара кб кода, на луа 
3 строки).



// А вот если бы Lua-модуль взяли "в коробку", это, да, было бы хорошо (но и
онтопик не в коробке, смею заметить)
Это необходимо, а не просто хорошо. А перл, который идёт штатно, и у 
которого до сих пор статус "нестабильный", выпилить к чертям.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: lte lt gte gt conditions

2015-09-14 Пенетрантность denis

14.09.2015 9:05, Alex Vorona пишет:

14.09.15 08:55, Андрей Василишин пишет:

14.09.2015 8:36, Alex Vorona пишет:

13.09.15 23:08, Андрей Василишин пишет:

Добрый день всем!
Хочу странного. Хочу делать limit_rate  в зависимости от
$connections_active и желательно без обращения на бэкенд за данной
логикой. Как такое сделать?

map_module пробовали?



не вижу там возможность построить выражение >, <, =<, >=
Постройте самописным генератором map для $connections_active от 0 до 
10 и все.
по отзывам, мап на 100к записей ест много памяти и подтормаживает. Да и 
выглядит как ужасный костыль.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: несколько уровней upstream

2015-08-11 Пенетрантность denis

11.08.2015 15:50, Maxim Dounin пишет:

Ну и не надо забывать, что явно описанная группа серверов сама по
себе обеспечивает опрос нужного количества серверов в случае
ошибок, см. http://nginx.org/r/proxy_next_upstream/ru.


Увы, оно не обеспечивает 3 уровней проверки.
Кстати, upstream тут уже стал под вопросом, поскольку основной метод 
опроса это uwsgi, второй и запасной - proxy_pass.

Так что вероятно надо городить несколько location в любом случае.

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: несколько уровней upstream

2015-08-11 Пенетрантность denis

10.08.2015 12:52, denis пишет:

Добрый день

как сделать такое:
первый запрос - всегда на основной апстрим, при таймауте на него же 
через другой порт, и там неудача - на резерв. Последнее через backup, 
а как первые два сделать? Второму серверу weight=0?

можно ли сделать try_files @first @second @third =404?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Кастомная сборка NGINX под Debian 7

2015-08-10 Пенетрантность denis

10.08.2015 13:07, Aleksandr Sytar пишет:



10 августа 2015 г., 13:01 пользователь denis <mailto:de...@webmaster.spb.ru>> написал:


15.07.2015 8:21, Aleksandr Sytar пишет:


Забыл самое главное - в папке debian в файл changelogs
добавить запись о новой версии


А почему самое главное? Если собираем чужой пакет, не всё-ли равно?


нет, версия будет такая же как в репе и если не поставить пакет на 
холд apt-get обновит ее



Так а при чем тут changelog? Может стоит тогда прописать другую версию?
Извините если вопросы глупые, я больше по centos...
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Кастомная сборка NGINX под Debian 7

2015-08-10 Пенетрантность denis

15.07.2015 8:21, Aleksandr Sytar пишет:


Забыл самое главное - в папке debian в файл changelogs добавить запись 
о новой версии




А почему самое главное? Если собираем чужой пакет, не всё-ли равно?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

несколько уровней upstream

2015-08-10 Пенетрантность denis

Добрый день

как сделать такое:
первый запрос - всегда на основной апстрим, при таймауте на него же 
через другой порт, и там неудача - на резерв. Последнее через backup, а 
как первые два сделать? Второму серверу weight=0?


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: обработка POST запросов

2015-08-05 Пенетрантность denis

05.08.2015 11:52, denis пишет:
Нужно обрабатывать имя файла, которое передается в POST и никак иначе. 
Пока вижу только 2 варианта (кроме проксирования на внешний скрипт): 
луа, который почему-то не собирается штатно в оф. репе, и перл, 
который уныл более чем полностью и с уродливой докой. Есть в инете 
примеры, но там скриптов на 3 экрана против 5 строк на луа.
Собственно, какие есть еще методы и почему штатно луа не 
компилируется? Его даже tengine уже давно штатно включает, а нагрузка 
там больше того же рамблера может даже на порядки.


По это теме хотелось бы получить комментарии.

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Добавление заголовка после upstream

2015-08-05 Пенетрантность denis

05.08.2015 18:23, Maxim Konovalov пишет:

Вы заблуждаетесь. Этого нет в платной версии. Документация от нее,
кстати, доступна на nginx.org и nginx.com.

Это хорошо.


Более того, динамические модули в плане разработки ветки 1.9:

http://trac.nginx.org/nginx/roadmap

Не прошло и 10 лет :)
Или прошло?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Добавление заголовка после upstream

2015-08-05 Пенетрантность denis

05.08.2015 17:13, Maxim Konovalov пишет:

On 8/5/15 5:11 PM, denis wrote:

Увы, модульности нгинха мы никогда не увидим, потому что это
"платная" фича :(

Это вы откуда такое взяли?
О модульности говорили года с 2010, если не раньше. у taobao есть 
механизм DSO, значит технически это реализуемо, и более того - можно 
было бы оттуда и взять за основу механизм. И я не вижу технических 
проблем запустить новых воркеров с новыми модулями, но в коде я не копался.
Плюс, кто-то говорил, что есть некий подобный механизм в плюс версии, но 
без пруфов. Может и соврали. Но не сделать за 5+ лет с их квалификацией? 
Значит, это им просто не нужно. Ну и закономерный вывод - потому что уже 
есть в платной версии.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Добавление заголовка после upstream

2015-08-05 Пенетрантность denis

05.08.2015 17:07, Aleksandr Sytar пишет:



5 августа 2015 г., 17:00 пользователь denis <mailto:de...@webmaster.spb.ru>> написал:


05.08.2015 15:59, Vadim A. Misbakh-Soloviov пишет:

Тот же nginx, но улученный taobao под свои нужды.

По поводу "улучшен" - тут есть несколько мнений. Например, у
них добавлено
очень много блокирующих операций ради плюшек. Так теряется вся
суть NginX и с
таким же успехом можно было бы использовать Apache. Так-то
CloudFlare (куда
как раз из TaoBao ушёл Yuchin Zhang) пошли по более
правильному пути: они не
форкали, они сделали свой бандл, OpenResty, где как раз и
LuaJIT, и ngx_lua и
куча вкусных модулей :) И *стандартный* NginX ;)

Да, пока гуглил парсилку пост, посмотрел уже на рести и его
возможности, статью на хабре... Интересная штука.
Увы, штатно луа нет вообще. Разработчикам большая просьба все-таки
включить его в оф репу, а рести уже сверху накатить можно будет.
Очень не хочется переходить с оф версии на CloudFlare сборку.


А в чем проблема самому пересобрать - инструкций полно, в том числе 
есть и в рассылке

Инструкции вида make install идут вЖ, надо пакеты собирать.
Взять спек, поправить, собрать. При любых проблемах будет "поставьте 
нашу чистую сборку", постоянно это мелькает. Плюс надо будет постоянно 
отслеживать тогда новые версии, получать новые спеки, править, собирать, 
деплоить.. И так уже много софта надо отслеживать, очень хотелось бы 
этого избежать. Тогда проще подключить стороннюю репу, где уже собрана 
те же рести, и проблем не знать.


Увы, модульности нгинха мы никогда не увидим, потому что это "платная" 
фича :(


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Добавление заголовка после upstream

2015-08-05 Пенетрантность denis

05.08.2015 15:59, Vadim A. Misbakh-Soloviov пишет:

Тот же nginx, но улученный taobao под свои нужды.

По поводу "улучшен" - тут есть несколько мнений. Например, у них добавлено
очень много блокирующих операций ради плюшек. Так теряется вся суть NginX и с
таким же успехом можно было бы использовать Apache. Так-то CloudFlare (куда
как раз из TaoBao ушёл Yuchin Zhang) пошли по более правильному пути: они не
форкали, они сделали свой бандл, OpenResty, где как раз и LuaJIT, и ngx_lua и
куча вкусных модулей :) И *стандартный* NginX ;)
Да, пока гуглил парсилку пост, посмотрел уже на рести и его возможности, 
статью на хабре... Интересная штука.
Увы, штатно луа нет вообще. Разработчикам большая просьба все-таки 
включить его в оф репу, а рести уже сверху накатить можно будет. Очень 
не хочется переходить с оф версии на CloudFlare сборку.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Добавление заголовка после upstream

2015-08-05 Пенетрантность denis

29.07.2015 16:39, Andrey Oktyabrskiy пишет:

On 2015-07-29 12:56, Budulianin wrote:
Может знаете какие-то книги/форумы/статьи на тему маршрутизации и 
правильных

подходов/принципов?
Интересно почитать.

Правильно так:
http://nginx.org/ru/docs/http/ngx_http_upstream_module.html#sticky

Но если купить коммерческую подписку по тем или иным причинам 
невозможно, придётся внешним монтажом:
или посмотреть на tengine, он умеет больше балансировок, может подойдет 
чего.

Тот же nginx, но улученный taobao под свои нужды.

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

обработка POST запросов

2015-08-05 Пенетрантность denis
Нужно обрабатывать имя файла, которое передается в POST и никак иначе. 
Пока вижу только 2 варианта (кроме проксирования на внешний скрипт): 
луа, который почему-то не собирается штатно в оф. репе, и перл, который 
уныл более чем полностью и с уродливой докой. Есть в инете примеры, но 
там скриптов на 3 экрана против 5 строк на луа.
Собственно, какие есть еще методы и почему штатно луа не компилируется? 
Его даже tengine уже давно штатно включает, а нагрузка там больше того 
же рамблера может даже на порядки.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: ошибка с curl(18)

2015-08-05 Пенетрантность denis

05.08.2015 2:28, Валентин Бартенев пишет:

On Tuesday 04 August 2015 20:19:29 denis wrote:

Добрый день.

Пытаюсь понять: есть некий скрипт на flask (python), через собственный
отладчик запрос работает нормально, он же черех nginx не хочет. ошибка
curl: (18) transfer closed with 233 bytes remaining to read

[..]

А в лог nginx смотрели?

--
Валентин Бартенев
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
2015/08/05 11:47:51 [error] 31107#0: *13387 readv() failed (104: 
Connection reset by peer) while reading upstream, client: 
192.168.10.202, server: localhost, request: "POST 
/fsconfsrv/dialplan.xml HTTP/1.0", upstream: 
"uwsgi://unix:/tmp/uwsgi-fsconfsrv.sock:", host: "192.168.10.250"


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

ошибка с curl(18)

2015-08-04 Пенетрантность denis

Добрый день.

Пытаюсь понять: есть некий скрипт на flask (python), через собственный 
отладчик запрос работает нормально, он же черех nginx не хочет. ошибка

curl: (18) transfer closed with 233 bytes remaining to read

Общий конфиг
user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid/var/run/nginx.pid;


events {
worker_connections  1024;
}


http {

proxy_connect_timeout   600;
proxy_send_timeout  600;
proxy_read_timeout  600;
send_timeout600;

uwsgi_read_timeout 1800;
uwsgi_send_timeout 300;

include   /etc/nginx/mime.types;
default_type  application/octet-stream;

log_format  main  '$remote_addr - $remote_user [$time_local] 
"$request" '

  '$status $body_bytes_sent "$http_referer" '
  '"$http_user_agent" "$http_x_forwarded_for"';

access_log  /var/log/nginx/access.log  main;

sendfileon;
#tcp_nopush on;

keepalive_timeout  65;

#gzip  on;

include /etc/nginx/conf.d/*.conf;
}

cat  /etc/nginx/conf.d/default.conf |egrep -v "^$|#"
server {
listen   80;
server_name  localhost;
location / {
root   /var/www/html;
index  index.html index.htm;
}
location /fsconfsrv {
access_log/var/log/nginx/fsconfsrv-access.log;
error_log /var/log/nginx/fsconfsrv-error.log;
root  /opt/API/fsconfsrv;

uwsgi_pass unix:/tmp/uwsgi-fsconfsrv.sock;
include uwsgi_params;
  }
}

в логе uwsgi
[pid: 27160|app: 0|req: 6/14] 192.168.10.202 () {36 vars in 616 bytes} 
[Tue Aug  4 19:52:03 2015] POST /fsconfsrv/dialplan.xml => generated 233 
bytes in 0 msecs (HTTP/1.0 404) 2 headers in 72 bytes (1 switches on core 0)
[pid: 27159|app: 0|req: 8/15] 192.168.10.202 () {36 vars in 619 bytes} 
[Tue Aug  4 19:53:19 2015] POST /fsconfsrv/dialplan.xml => generated 233 
bytes in 0 msecs (HTTP/1.1 404) 2 headers in 72 bytes (2 switches on core 0)
[pid: 27160|app: 0|req: 7/16] 192.168.10.202 () {36 vars in 619 bytes} 
[Tue Aug  4 19:54:49 2015] POST /fsconfsrv/dialplan.xml => generated 233 
bytes in 0 msecs (HTTP/1.1 404) 2 headers in 72 bytes (1 switches on core 0)
[pid: 27160|app: 0|req: 8/17] 192.168.10.202 () {34 vars in 592 bytes} 
[Tue Aug  4 19:55:27 2015] POST /fsconfsrv/dialplan.xml => generated 233 
bytes in 0 msecs (HTTP/1.0 404) 2 headers in 72 bytes (1 switches on core 0)
[pid: 27160|app: 0|req: 9/18] 192.168.10.202 () {34 vars in 592 bytes} 
[Tue Aug  4 19:58:25 2015] POST /fsconfsrv/dialplan.xml => generated 233 
bytes in 0 msecs (HTTP/1.0 404) 2 headers in 72 bytes (1 switches on core 0)
[pid: 27160|app: 0|req: 10/19] 192.168.10.202 () {32 vars in 561 bytes} 
[Tue Aug  4 19:59:55 2015] POST /fsconfsrv/dialplan.xml => generated 233 
bytes in 0 msecs (HTTP/1.0 404) 2 headers in 72 bytes (1 switches on core 0)

видно, что размер каждый раз разный, хотя по факту он один.

пробовал курл с опциями -H "Content-Length:" --ignore-content-length -0 
-kv - не помогло.

Сам запрос
curl -X POST "http://192.168.10.250/fsconfsrv/dialplan.xml"; -d 
"hostname=fs02.test.ru§ion=dialplan&tag_name=&key_name=&key_value=&Event-Name=REQUEST_PARAMS&Core-UUID=5eb1d5da-3a05-11e5-8df2-97880de72862&FreeSWITCH-Hostname=fs02.test.ru&FreeSWITCH-Switchname=fs02.test.ru&FreeSWITCH-IPv4=222.333.444.152&FreeSWITCH-IPv6=%3A%3A1&Event-Date-Local=2015-08-04%2019%3A48%3A56&Event-Date-GMT=Tue,%2004%20Aug%202015%2016%3A48%3A56%20GMT&Event-Date-Timestamp=1438706936115775&Event-Calling-File=mod_dialplan_xml.c&Event-Calling-Function=dialplan_xml_locate&Event-Calling-Line-Number=606&Event-Sequence=11348&Channel-State=CS_ROUTING&Channel-Call-State=RINGING&Channel-State-Number=2&Channel-Name=sofia/internal/000*102%40siptest.test.ru%3A5060&Unique-ID=b20979a4-3ac8-11e5-9fde-97880de72862&Call-Direction=inbound&Presence-Call-Direction=inbound&Channel-HIT-Dialplan=true&Channel-Presence-ID=000*102%40siptest.test.ru&Channel-Call-UUID=b20979a4-3ac8-11e5-9fde-97880de72862&Answer-State=ringing&Caller-Direction=inbound&Caller-Logical-Direction=inbound&Caller-Username=000*102&Caller-Dialplan=XML&Caller-Caller-ID-Name=000*102&Caller-Caller-ID-Number=000*102&Caller-Orig-Caller-ID-Name=000*102&Caller-Orig-Caller-ID-Number=000*102&Caller-Network-Addr=222.333.444.150&Caller-ANI=000*102&Caller-Destination-Number=000*103&Caller-Unique-ID=b20979a4-3ac8-11e5-9fde-97880de72862&Caller-Source=mod_sofia&Caller-Context=public&Caller-Channel-Name=sofia/internal/000*102%40siptest.test.ru%3A5060&Caller-Profile-Index=1&Caller-Profile-Created-Time=1438706935935776&Caller-Channel-Created-Time=1438706935935776&Caller-Channel-Answered-Time=0&Caller-Channel-Progress-Time=0&Caller-Channel-Progress-Media-Time=0&Caller-Channel-Hangup-Time=0&Caller-Channel-Transfer-Time=0&Caller-Channel-Resurrect-Time=0&Caller-Channel-Bridged-Time=0&Caller-Channel-Last-Hold=0&Caller-Channel-Hold-Accum=0&Caller-Screen-Bit=true&Caller-Privacy-Hide-Name=false&Caller-Privacy-Hide-Nu

realip и apache без mod_rpaf

2015-05-17 Пенетрантность denis
Что нужно, чтобы realip подставлял сам реальный адрес для апача? По 
разным причинам пока rpaf не ставится.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: замедление работы

2015-05-14 Пенетрантность denis

14.05.2015 15:58, Андрей Василишин пишет:

14.05.2015 15:57, denis пишет:

Добрый день.

Иногда приходится слышать (и видеть) - "поставили nginx, всё стало
тормозить". Напрямую запросы быстрые, после включения nginx В режиме
proxy_pass (статики тоже, ибо с другого сервера) - ощутимо медленнее,
time curl подтверждает, например 5с против 0.3

Как диагностировать такие случаи?




А кеширование используется? Или нгинкс в виде простой прокладки?
просто прокладка, типовые концигурации, единственный локейшен с 
прокси-пассом. . Но даже так - процентов 10 потери скорости будут не 
заметны, а больше - ненормально.


Чуть уточню вопрос: бывает 2 вида проблемы
1) был апач в мир, поставили проксировать nginx (и статику), сервер один 
- тот же битрикс иногда существенно замедляется. Понятно, что правильно 
настроить чисто на динамику - и будет быстрее, но сам факт... Особенно 
актуально, когда на сервере 100-500 сайтов, под все конфиги писать - 
нужно время.
2) был сервер, его увели в локальную сеть, запросы проксируются - такой 
вариант бывает, когда было несколько серверов со своими айпи, их 
объединили в dmz и вывели через 1 айпи в мир. Домены не пересекаются.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

замедление работы

2015-05-14 Пенетрантность denis

Добрый день.

Иногда приходится слышать (и видеть) - "поставили nginx, всё стало 
тормозить". Напрямую запросы быстрые, после включения nginx В режиме 
proxy_pass (статики тоже, ибо с другого сервера) - ощутимо медленнее, 
time curl подтверждает, например 5с против 0.3


Как диагностировать такие случаи?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Логирование в один файл из разных server

2015-04-28 Пенетрантность denis
Нужно учитывать багофичу: если на уровне http  определен ахсекс или 
еррор лог, а где-то глубже лог снова появляется - в корневой оно уже не 
попадёт. Это вынуждает городить сложные системы инклудов, когда 1 запись 
нужна в 2-3-... файлах. Банально - сбор информации по доменам - 
определяем на уровнях http, server, locaton и ВСЕХ местах, где есть 
вывод в отдельный лог.
Хорошо бы сделать опцию например global, чтобы в этот файл писалось 
ВСЕГДА, но если это и будет, то только в платной версии :(

Если  запрос не попал  в  локейшен  первого сервера, то он проезжает на
второй  сервер   и отправляется на  бекэнд, если попал  в  локейшен , то
напрямую отправляется на бекэнд.  Проблема в том, чтона  бекэнде  был
зафиксирован  запрос, который не отразился в /var/log/nginx_b.log,  но при
этом  был в /var/log/nginx_a.log.  Можно  ли писать  в один файл  из  разных
server?  Не  будет  ли  проблем,  при  записи  access  лога на разных
уровнях (server,location)?


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

chrome 41 и err_ssl_version_or_cipher_mismatch

2015-04-21 Пенетрантность denis

Добрый день.
Обнаружилось, что в новом хроме опять что-то сломали, и теперь 
err_ssl_version_or_cipher_mismatch. Нормальные браузеры и более старые 
хромы - работают. Может знает кто, что можно указать нгинху или куда 
пнуть хром. Сам сертификат RSA 2048 бит.
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx-1.7.7

2015-02-17 Пенетрантность denis

17.02.2015 16:10, Илья Шипицин пишет:

а зачем кешировать gzip и не-gzip ?
какая задача решается ?

видимо, разгрузить проц и не жать уже сжатое снова.. А не сжатое тем, 
кто не умеет сжатие.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: offtopic linux routeing question

2015-02-17 Пенетрантность denis

17.02.2015 16:36, Vasiliy Tolstov пишет:

Добрый день.
Пока не знаю где можно еще уточнить, поэтому пишу сюда. Имеется сеть
адресов, для который по-умолчанию сделан blackhole роутинг.
Вопрос состоит в том, почему линукс все равно посылает icmp сообщение
в ответ о недоступности адреса из данной сети , причем как-то странно,
в среднем по 2 сообщения в секунду...
Если я все правильно прочитал, то в случае blackhole такого быть не должно.
Кто то может что-то подсказать по данному поводу?


С каких пор nginx научился icmp? O_O
Это задача фаервола. А для правильного отлупа у iptables есть
-A INPUT -j REJECT --reject-with icmp-host-prohibited
и аналоги.
Ну и есть просто -j DROP

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Невозможно изменить document root

2015-02-02 Пенетрантность denis

28.01.2015 10:26, Eugene Peregudov пишет:


ИМХО, очень зря решается выключением. В первую очередь разработчик 
приложения и мэйнтейнер должны знать и предоставить информацию о том, 
какие разрешения необходимы приложению для корректного выполнения, а в 
идеале еще и написать policy-файл.


Каждый раз когда кто-то выключает SELinux где-то плачет Dan Walsh 
(http://stopdisablingselinux.com/)


До тех пор, пока оно будет включено по умолчанию - все инструкции будут 
начинаться с "выключите selinux", потому что обычно настройка делается 
так - селинух выкл или в permissive, нормальная настройка всего что 
запускаем и разворачиваем, а потом уже смотрим по результату, какие 
права нужны.
Плюс, пока нет чётких ошибок "selinux: на файле XXX нет прав на YYY", 
первым шагом диагностики всегда будет его отключение. Это как при 
сетевой мистике обычно первый шаг - отключить фаервол. Это неправильно, 
но сразу становится понятно, кто виноват.
До кучи - рабочим и тестовым машинам selinux больше мешает чем помогает, 
и там выключить совсем - нормальное действие.


Из самого банального: ssh, авторизация по ключам, .ssh создан, права 
0700, authorized_keys создан, права 0600, все владельцы правильные. Ключ 
не принимало, пока не выключили selinux (!). В логах ничего про то, что 
выполнена блокировка селинухом. Итог: я тоже приучился первым делом 
выключать это зло, пока оно не научится само и внятно говорить, что не так.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: 500 Internal Server Error

2015-01-30 Пенетрантность denis

30.01.2015 13:09, maxim88 пишет:

Добрый день!

Есть два вида ссылок:

http://domen.ly/tds/0d25   - nginx отдает 500 Internal Server Error
http://domen.ly/tds/?0d25  - такую ссылку обрабатывает корректно


для начала, около listen ставим
error_log /var/log/nginx/domen.ly-error.log info;
перечитываем конфиг и ошибку сюда
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Подвисания при распаковке архива

2015-01-27 Пенетрантность denis

28.01.2015 0:09, Роман пишет:

Про распаковывание с помощью nginx веселая шутка )

Все не совсем так.

Я распаковываю tar архив в системе и независимо от того какие 
приоритеты я выставляю через какое то время nginx начинает медлить с 
ответом.
Вот и  возникает вопрос что надо подкрутить чтобы он не обращал на это 
внимание.

Количество открытых файлов в системе я увеличил, но это не дает эффекта.


Телепаты в отпуске.
В логах что?

И можно еще дебаг-лог включить.
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Подвисания при распаковке архива

2015-01-27 Пенетрантность denis

27.01.2015 11:25, Роман пишет:
Nginx перестает отдавать файлы при распаковке архивов с большим 
количеством файлов.


Пробовал запускать через nice -n 15 ionice -c3 - не помогает.

В чем может быть проблема?


в логах? :)
Скорее всего в лимит открытых файлов уперлись, но опять же - логи где? 
Сайта и общий.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx/1.4.6 spdy

2015-01-22 Пенетрантность denis

22.01.2015 10:57, Валентин Бартенев пишет:

У вас слишком древняя версия nginx, в которой реализована
версия протокола spdy/2, поддержку которой уже исключили
из современных браузеров.

Вам стоит обновить nginx до 1.7.9.


а можно список, какая версия какой протокол умеет? Лучше сразу на сайте

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Не кешируются post запросы

2014-12-30 Пенетрантность Denis P.
Затупил. Все на самом деле работает

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,255826,255870#msg-255870

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Не кешируются post запросы

2014-12-29 Пенетрантность Denis P.
Добрый день!

Для определенной задачи требуется сделать кеширование post запросов, но
никак не получается. 


Конфиг :

proxy_cache_methods POST; # GET HEAD
proxy_cache_key "$uri|$request_body";
client_max_body_size 10m; # 413
expires 24h;


Тыкаем в браузер первый раз:

10.10.10.10 - [29/Dec/2014:17:20:26 +0500] 200 "POST /sd/admin/dispatch
HTTP/1.1"
7|0|31|http://localhost/sd/admin/|0B5EEF49472D45E026B0F3F47167FB96|net.customware.gwt.dispatch.client.standard.StandardDispatchService|execute|net.customware.gwt.dispatch.shared.Action|ru.naumen.core.shared.dispatch.GetDtObjectListAction/3060214423|ru.naumen.core.shared.criteria.DtoCriteria/300364404|java.lang.Boolean/476441737|ru.naumen.metainfo.shared.ClassFqn/3609641243|category|java.lang.Integer/3438268394|java.util.LinkedHashMap/3008245022|java.lang.String/2004016611|title|ru.naumen.core.shared.criteria.Order/3649447375|ru.naumen.core.shared.criteria.DtoProperties/1685177594||java.util.HashSet/3273092938|color|code|folder|removed|removalDate|parent|position|icon|java.util.HashMap/1797211028|java.util.ArrayList/4159755760|mappingContextCutTextStrategy|mappingContextEmulateReferencesStrategy|mappingContextCutImagesStrategy|1|2|3|4|1|5|6|1|0|7|0|8|0|0|9|10|11|1000|0|0|0|12|0|1|13|14|15|1|0|14|16|17|18|9|-7|13|19|13|20|13|21|13|22|13|23|13|24|13|25|13|26|27|1|-16|16|24|18|1|-14|27|0|0|1|0|0|28|3|13|29|13|30|13|31|0|
540 "http://localhost/sd/admin/"; "Mozilla/5.0 (Macintosh; Intel Mac OS X
10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95
Safari/537.36" "-" "200" "10.10.10.11:10080"


Тыкаем второй раз:

10.10.10.10 - [29/Dec/2014:17:21:17 +0500] 200 "POST /sd/admin/dispatch
HTTP/1.1"
7|0|31|http://localhost/sd/admin/|0B5EEF49472D45E026B0F3F47167FB96|net.customware.gwt.dispatch.client.standard.StandardDispatchService|execute|net.customware.gwt.dispatch.shared.Action|ru.local.core.shared.dispatch.GetDtObjectListAction/3060214423|ru.local.core.shared.criteria.DtoCriteria/300364404|java.lang.Boolean/476441737|ru.local.metainfo.shared.ClassFqn/3609641243|category|java.lang.Integer/3438268394|java.util.LinkedHashMap/3008245022|java.lang.String/2004016611|title|ru.local.core.shared.criteria.Order/3649447375|ru.local.core.shared.criteria.DtoProperties/1685177594||java.util.HashSet/3273092938|color|code|folder|removed|removalDate|parent|position|icon|java.util.HashMap/1797211028|java.util.ArrayList/4159755760|mappingContextCutTextStrategy|mappingContextEmulateReferencesStrategy|mappingContextCutImagesStrategy|1|2|3|4|1|5|6|1|0|7|0|8|0|0|9|10|11|1000|0|0|0|12|0|1|13|14|15|1|0|14|16|17|18|9|-7|13|19|13|20|13|21|13|22|13|23|13|24|13|25|13|26|27|1|-16|16|24|18|1|-14|27|0|0|1|0|0|28|3|13|29|13|30|13|31|0|
540 "http://localhost/sd/admin/"; "Mozilla/5.0 (Macintosh; Intel Mac OS X
10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95
Safari/537.36" "-" "200" "10.10.10.11:10080"


В access логе томката видны оба раза пост запросы. Подскажите, в чем может
быть проблема?

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,255826,255826#msg-255826

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: image_filter в репозиториях debian

2014-12-15 Пенетрантность denis

15.12.2014 16:48, Vadim Lazovskiy пишет:

Здравствуйте.

А почему image_filter не включен в сборки для debian (подозреваю и для прочих)?
Не очень удобно каждый раз при обновлении пересобирать пакет.
вопрос к майтайнеру пакета для дебиана... и это не местные разрабы, как 
я понимаю.
Во всяком случае, дебиановские пакеты тут не любят при поиске проблем, 
говорят сначала на оф заменить.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: limits с исключениями?

2014-12-11 Пенетрантность denis

11.12.2014 16:07, Валентин Бартенев пишет:

On Thursday 11 December 2014 15:11:16 denis wrote:

Есть лимиты на коннекты с 1 айпи, но когда вторая нода переводит весь
свой трафик на первую (сбой ее апача) -- ловим этот лимит. Есть идея
использовать realip, но непонятно, кто сработает раньше - лимит или модуль.

Какие есть еще варианты?


realip сработает раньше.

при этом на основной ноде лимиты не лезут, а на резерве лезут... такое 
впечатление, что адрес заменяет, но лимит смотрит все-равно на старый. В 
логе айпи разные, но грубые прикидки не дают им превышения лимита.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

limits с исключениями?

2014-12-11 Пенетрантность denis
Есть лимиты на коннекты с 1 айпи, но когда вторая нода переводит весь 
свой трафик на первую (сбой ее апача) -- ловим этот лимит. Есть идея 
использовать realip, но непонятно, кто сработает раньше - лимит или модуль.


Какие есть еще варианты?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: debian + geoip_module

2014-12-11 Пенетрантность denis

10.12.2014 14:31, Дима Редмайн пишет:



нашлось решение?
Использовать штатный старый дебиановский или собрать свой, с нужными 
модулями


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Просмотр url активных соединений

2014-11-26 Пенетрантность denis

27.11.2014 9:30, TomskDiver пишет:

Вы правы, у них есть модуль ngxhttpreqstat_module
http://tengine.taobao.org/document/http_reqstat.html


айда все дружно на tengine 

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Просмотр url активных соединений

2014-11-26 Пенетрантность denis

27.11.2014 9:14, Violator43 пишет:

Думаю, что разработчикам этот вопрос уже надоел, раз они его просто
игнорируют.
Наверно кому-то надо взяться за написание стороннего модуля.


скорее всего, это есть в платной версии, поэтому и игнорируют.
ЗЫ Посмотрите сборку от таобао, там много вкусного добавлено, в том 
числе что тут только в платной версии


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: SSL единый HTTP/HTTPS сервер

2014-11-22 Пенетрантность denis

21.11.2014 23:52, dwow пишет:

например, на разных портах настроены тестовые сервера.


на разных портах - можно, на одном нет

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: debian + geoip_module

2014-11-13 Пенетрантность denis

13.11.2014 16:40, Дима Редмайн пишет:

лови

# apt-cache policy nginx
nginx:
  Installed: 1.2.1-2.2+wheezy3
  Candidate: 1.2.1-2.2+wheezy3
  Version table:
 *** 1.2.1-2.2+wheezy3 0
500 http://ftp.nl.debian.org/debian/ stable/main amd64 Packages
500 http://security.debian.org/ wheezy/updates/main amd64 Packages
100 /var/lib/dpkg/status


apt-cache policy nginx
nginx:
  Installed: 1.6.2-1~wheezy
  Candidate: 1.6.2-1~wheezy
  Version table:
 *** 1.6.2-1~wheezy 0
500 http://nginx.org/packages/debian/ wheezy/nginx amd64 Packages
100 /var/lib/dpkg/status
 1.2.1-2.2+wheezy3 0
500 http://mirror.selectel.ru/debian/ wheezy/main amd64 Packages
500 http://security.debian.org/ wheezy/updates/main amd64 Packages

1.2.1 не слишком стар? Оно вроде вообще EoL,

apt-cache search nginx
находит в том числе
nginx-extras - nginx web/proxy server (extended version)
nginx-extras-dbg - nginx web/proxy server (extended version) - debugging 
symbols

nginx-full - nginx web/proxy server (standard version)
nginx-full-dbg - nginx web/proxy server (standard version) - debugging 
symbols

nginx-light - nginx web/proxy server (basic version)
nginx-light-dbg - nginx web/proxy server (basic version) - debugging symbols
nginx-naxsi - nginx web/proxy server (version with naxsi)
nginx-naxsi-dbg - nginx web/proxy server (version with naxsi) - 
debugging symbols

nginx-naxsi-ui - nginx web/proxy server - naxsi configuration front-end



# nginx -V
nginx version: nginx/1.2.1

# nginx -V 2>&1 |grep geoip
#

(вообще, это явно баг, что вывод версии сыпет в stderr, но всем поф)

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

debian + geoip_module

2014-11-13 Пенетрантность denis

deb http://nginx.org/packages/debian/ wheezy nginx
deb-src http://nginx.org/packages/debian/ wheezy nginx
Репа подключена.
Какой надо поставить пакет, где geoip будет уже собран? Не хотелось бы 
руками собирать.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx балансер proxy pass разделить конфиги при балансе

2014-08-25 Пенетрантность denis

25.08.2014 13:40, shambler81 пишет:
Извиняюсь конечно, но "моя недавно приехала писать пока ниумею".


Спасибо за  отзвыв, идея с svn мне очень приглянулась,  обязательно реализую
но явно не на этом проекте.
Что касается
Proxy_redirect я тут тоже немного опешил но это стандартный конфиг nic.ru
тут я ничего не сделаю.
Собственно задача достаточно идиотская изначально.

Клиент боиться перевозить сайт на  выделеный сервер и требует полного бэкапа
на старый сервер.
Поскольку на нем стоит nginx  появилась идея не просто дампить изакачиваь
файлы на  nic.ru и импортить   бд раз в неделю.

а еще можно поднять master-slave и всегда иметь горячую копию базы.


По сему мне и нужен не просто proxy_pass
а и статика поскольку мне нужно подсасыватьи  статику с другого сервера.
статистика через парсинг логов обоих серверов. Есть post-action, но он 
иногда ломается и вообще требует умения себя готовить, так что для 
начала только парсинг.



В данной конфигурации фактически хотелось бы разделяем nginx  и апач на
разные машины.

  Сайт на втором сервере доступен по ip Однако  не совсем понятно как мне
подгрузить полностью новый конфиг  при изменение
nginx reload, больше никак. Читаем ранее. Конфиги сами не всосутся, их 
надо синхронизировать, потом релоад.



http {
upstream myapp1 {
server 111.111.111.111:8080 fail_timeout=10; (удаленый сервер со своим
nginx+apache)
server 10.1.119.36:8080; (местная копия)
}
это схема 50/50, половина запросов будет идти на старый сервер, половина 
на новый.

Пора бы уже поднять тестовый стенд из 2 виртуалок и потестировать...

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: health_check

2014-08-21 Пенетрантность denis

21.08.2014 22:13, igor.goncharenko пишет:

Hi!

Не планируется ли включить health_check в комьюнити версию?


А деньги за что брать? :)
Не смотрели форк от таобао? там вроде было что-то такое...

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx балансер proxy pass разделить конфиги при балансе

2014-08-21 Пенетрантность denis

21.08.2014 19:11, shambler81 пишет:

Добрый день уважаемые коллеги, встал вопрос  подключить балансный  сервер
фактически старый сервер на который заходят НС сервера будет в роли
резервного. Новый сервер на котором все так же настроено будет выступать
просто как  приоритентый в балансе бэкэнд, если  сервер отвалится то   сайт
отдается со старого серве. Баланс работает как на статику так и на
proxy_pass
статика прописывается отдельно, и так не указать. Или вообще всё 
проксипассить на нгинхи самих серверов, они уже будут раздавать статику 
с себя.
для бэкап сервера или ключевое слово backup, или на оба выставить weight 
правильно.



Nginx  расположен на старом. считаем что он не падает.
Если сервер раздает статику, при активных IO он тоже может "замерзать", 
мы лечим чисто прокси на входе, без дисковых операций + нгинхи на 
рабочих нодах уже для кэшей, статики и прочего. Дисковые операции его 
тоже блокируют, ничего не помогло.



А что делать если мне нужно  изменить и правила для статики, внести
изменения в @failback  в общем по хорошему подставить другой файл конфига ?
вынести части конфигов через include, пихнуть все конфиги в svn с хуком 
на коммит: проверка валидности конфигов (обязательно!) + nginx reload, 
или всякие csync опять же с хуком на измененения и перезапуском.



 proxy_pass myapp1
 proxy_redirect http://mysite-m.mysite.ru:8080/ /;
 proxy_redirect http://www.mysite-m.ru:8080/ /;
 proxy_redirect http://xngtbctnkl.xn--p1ai:8080/ /;
 proxy_redirect http://mysite-m.ru:8080/ /;
 proxy_redirect http://www.xngtbctnkl.xn--p1ai:8080/ /;
 proxy_redirect http://www.mysite-m.mysite.ru:8080/ /;
 proxy_redirect http://mos.mysite-m.ru:8080/ /;


имхо, тут ерунда написана.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: непонятный баг, контент с другого домена

2014-06-13 Пенетрантность denis

13.06.2014 12:51, AlexFC пишет:

Здравствуйте!

Столкнулся со следующей проблемой:
Возникает на каждом новом юзере, воспроизводится.
Создаю новый ввв-домен, можно с новым пользователем, можно на существующем.
Обращаюсь http://домен/images/logo.png (или что угодно другое из статики не
существующей в этом домене).
Получаю в ответ картинку другого пользователя.
В логе nginx вижу, что обращение происходит к другому пользователю,
хотя в nginx.conf явно прописаны server_name для обоих доменов, никаких
вайлдкардов, никаких особых конфигов, просто 2 обычных пользователя.
Делаю service nginx restart, проблема уходит, получаю 404.
возможно, не было релоада, имеет смысл создать ветку на форуме 
ispmanager. Без релоада должно отдавать файлы default домена или того, 
кто первый в списке.



Если я после этого пересоздам домен, все будет нормально.
Если же я удалю домен, сделаю nginx restart, и создам опять, проблема опять
возникает.
nginx reload не помогает!
практика показывает, что в некоторых версиях линей reload при ошибке в 
конфиге говорит ОК, но ничего не рестартит, поэтому у меня уже привычка 
сначала делать nginx -t или service nginx configtest. Но чтобы рестарт 
при этом помогал - это похоже на баг. Был например баг с 
mod_passenger+freebsd, после релоада руби ломался, надо было делать 
именно рестарт, но с той поры года 2 прошло.



Проверил, при условии что на тестовом домене отдается картинка домена X,
если на тестовом домене положить вместо нее другую картинку, отдаваться
будет все равно картинка домена X, а вот если положить картинку с другим
именем файла, то будет отдаваться правильно - файл с тестового домена.
похоже на какой-то кэш. Может браузера? Вообще такие вещи надо 
тестировать курлом. Нет ли еще промежуточных серверов, которые могут 
кэшировать? Что при полном удалении упоминаний кэширования?


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: SSL Ошибка

2014-06-02 Пенетрантность denis

02.06.2014 18:53, chebevara пишет:

Можете подсказать в каком направлении копать?

ls -la /etc/nginx/ssl/infolog2.ru.crt
ls -la /etc/nginx/ssl/
и проверить права. Может сертификаты не от рута пытается прочесть а от 
nginx или nobody или еще от кого..


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx location regexp - из файла

2014-04-25 Пенетрантность denis

25.04.2014 22:48, den68 пишет:

Вероятно спрошу глупость, но все-же, хотелось бы брать regexp для location
из файла, в документации в явном виде не нашел..
конфиг перечитывается при старте. Можно попытаться запустить через Map 
или написать обертку на lua/perl, но лучше написать парсер-генератор 
конфигов, у меня нечто подобное сделано для allow from на кучу айпи, 
автореген на хуке на коммит в свн. Добавляем айпи, коммитим - на сервер 
выкатывается свежий конфиг и релоад.


А еще правильнее просто описать эти секции в 1 или нескольких инклудах и 
подключать в нужные проекты, такое у нас тоже есть.


Также возможно стоит смотреть в сторону naxsi, это что-то типа 
mod_security, а может и на версию секурити для нгинха, вроде как уже 
была стабильная версия. И там можно описать сильно больше возможностей.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Вопрос про merge_slashes

2014-04-25 Пенетрантность denis

25.04.2014 15:37, Михаил Монашёв пишет:

Здравствуйте.

В доке http://nginx.org/ru/docs/http/ngx_http_core_module.html#merge_slashes
написано "Однако из соображений безопасности лучше избегать отключения 
преобразования."

Что именно небезопасного может произойти приmerge_slashes off;

Поясню проблему. Сайт сильно спамят. Я настроил правило, которое
смотрит лог и если происходит более Х обращений вроде
POST /p/add_topic.cgi HTTP/1.1
то ip считается подозрительным. Спамер это просёк и сейчас шлёт
запросы вот такие:
POST //p/add_topic.cgi HTTP/1.1"

Я могу свою парсилку логов поправить, но и с директивой хотелось бы
понять проблему.


#to http
map $binary_remote_addr $is_post {
POST $binary_remote_addr;
}
limit_req_zone $is_post zone=post:1m rate=12r/m;

location / {
limit_req zone=post burst=1 nodelay;
limit_req zone=limitReqsPerIP burst=8 nodelay;
...

И ловим в еррлогах 503, после чего уже банним.
Вариант 2

location /login/ {
   if ($request_method = POST) {
   #limit_req zone=pmk-login; #burst=1;
   return 402;
   }

   error_page 402 @post;

location @post {
access_log post.log;
limit_req zone=pmk-login; #burst=1;

proxy_pass http://BE;
proxy_redirect off;
proxy_next_upstream error timeout invalid_header 
http_500 http_502 http_503;

}

Вариант 3
location ~* add_topic.cgi$ {
и тоже лимиты, if на POST итд

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Не отдаются большие страницы

2014-04-04 Пенетрантность denis

04.04.2014 15:33, Alfa7 пишет:

Кстати, по поводу прав на proxy_temp_path - возможно, проверю. Если статику
nginx хранит не у себя, а тоже забирает с бэкенда - использует ли эта
директория? Хотя в минимальной конфигурации, с которой я проверял -
отключал/комментировал вообще все, что только возможно

отключив "всё", proxy_temp_path никуда не отключается, просто берется из 
того что прописано в коде. nginx -V нужен, когда работает и когда нет. 
Хотя тот nginx что в портах работает порой странно - я тоже замечал, 
потом напишу вопрос (например, прописали listen на конкретный ип вместо 
:80, на котором он и так отвечал - стало отдаваться по конфигу другого 
сайта.. и прочий бред)


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Модуль mp4: 500 Internal Server, pread() failed (22: Invalid argument),

2014-04-03 Пенетрантность denis

03.04.2014 16:24, Shold пишет:
Вообще, я про линух ничего не говорил, но да - стоит CentOS. ZFS 
пришел чуть

позже, чем была установлена и настроена система. Целью введения ZFS как раз
и было ускорение дисковой подсистемы. Про подводные камни согласен, но не
думал, что упрусь в aio ((
Сам по себе zfs ничего не ускорит, и более того, при неправильном 
применении сделает только хуже. Например, когда мало места, 
производительность просядет раз в 10 by design. Ускорить работу, иногда 
существенно, может l2arc+ZIL на SSD, но в лине есть flashcache, bcache, 
btier, а также подобный функционал есть у аппаратных рейдов на LSi, adaptec.
Имело бы некоторый смысл при использовании сжатия и дедупликации, но mp4 
и так сжаты, а для дедупликации на 30Тб данных надо хотя бы 32 гига 
оперативы, а лучше 64 и более, иначе можно схватить панику или отвал пула.


Ну или кластерную фс и несколько нод, с легким масштабированием, но 
несколько другой ценой.



Посоветуйте Soft-RAID, на котором именно CentOS способен развивать
космические скорости.
dmraid, mdraid ) А вообще "космические скорости" тут смотрится странно. 
Как рейд сделает скорости?
Если вопрос в уровнях -- самый быстрый это 0, чередование, stripe. Он же 
самый опасный, отвал 1 диска = смерть всех данных. Наиболее оптимальный 
-- 6 или 60, только не 5 ни в коем случае, уже на 10Тб он слишком опасен.
Ну и желательно все-таки 2 ноды и более иметь, на случай любых проблем 
на одной - оставшиеся вытянут.



  Ну и чтобы совместимость с aio была. Это принципиально
важно, потому как контент MP4, файлы большие и много (в сумме около 30ТБ).
Отдача активная (в пике до 700 параллельных скачиваний).

700? Это шутка? Спросите у файловых хостингов, сколько у них параллельно...

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Модуль mp4: 500 Internal Server, pread() failed (22: Invalid argument),

2014-04-03 Пенетрантность denis

03.04.2014 15:47, Maxim Dounin пишет:

Линукс в сочетании с AIO - это вообще слабое звено, он его не
умеет нормально, из-за этого приходится прибегать к множеству
ухищрений и извращений.

Для zfs, похоже, не умеет вообще:

https://github.com/zfsonlinux/zfs/issues/223
Если нужен zfs, почему не фря/индиана? zfsonlinux пока много подводных 
камней таит


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Помогите с uri и root

2014-03-25 Пенетрантность denis

25.03.2014 17:12, Lystopad Aleksandr пишет:

Нужно настроить nginx на отдачу файлов с подобным именем при помощи root .

Догадываюсь, что проблему можно решить путем изменения ссылки.

Прошу помочь снять с ручника: где я туплю?

http://nginx.org/ru/docs/debugging_log.html
включить дебаг-лог и смотреть, куда оно лезет за файлами.
Для изменения места где искать
http://nginx.org/ru/docs/http/ngx_http_core_module.html#alias

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

проверка конфигов из скрипта

2014-03-25 Пенетрантность denis

if [ "`/usr/local/sbin/nginx -t | grep 'syntax is ok'`" != '' ] ; then

Говорит что всё ок, но не работает... А как тогда?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Директивы сжатия дублированы?

2014-03-14 Пенетрантность denis

14.03.2014 13:22, Заярный Сергей пишет:

По факту получается что используется дефолтное значение, т.е. сжимается 
text/html  только.

Встречный вопрос - есть ли внятные статисследования какие контент типы сжимать 
опасно?
опасно? чем это? Бессмысленно - да, есть такое, например jpg и так сжат, 
меньше уже не станет.

А так - gzip_types *;
и будет жать всё.

А, да, есть еще косяки со всяким старьём типа ие6, для чего там обычно 
добавляется исключение по MSIE, так как оно заявляет что умеет сжатие, 
хотя на самом деле не умеет. Только это уже просто костыль 
совместимости, ие6 уже никто в здравом уме не поддерживает.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Директивы сжатия дублированы?

2014-03-14 Пенетрантность denis

14.03.2014 12:44, Виктор Вислобоков пишет:

Сегодня разбирался с сжатием и открыл для себя, что мало сказать:
gzip on
надо ещё ОБЯЗАТЕЛЬНО перечислить MIME типы для которых будет 
осуществляться сжатие.

Тогда возникает вопрос, а зачем тогда вообще нужен gzip on?
По факту-то получается, что сжатие включается именно директивой 
gzip_types. Только путаница и дублирование.



http://nginx.org/en/docs/http/ngx_http_gzip_module.html#gzip_types
syntax:|*gzip_types*|/mime-type/|...;|
default:

gzip_types text/html;


Можно было бы сделать по умолчанию все основные сжимаемые типы, да, но и 
так html при верном типе должен жаться. Или какая версия и дистр, если 
дебилян с древней как Г мамонта версией - обновить обязательно.
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: auth_digest -- несколько вопросов

2014-02-26 Пенетрантность denis

26.02.2014 20:40, Maxim Dounin пишет:
Нет, по https тоже можно отдавать. Нельзя отдавать с разных внешних 
серверов

(продакшн отдельно, тестовые сервера отдельно)
в чистом виде https нам ничем не поможет, все-равно нужна авторизация.

Ну так и в чём тогда проблема использовать basic + ssl, как и
предлагалось ранее?  Исходный вопрос, на который хотелось получить
ответ, - зачем вам digest, да ещё и в виде стороннего модуля,
когда есть способ проще и лучше.

Впрочем, можно считать, что ответ я получил - какой-либо
осмысленной причины нет.  Спасибо.
потому что конфликт с авторизацией битрикса! не работает басик+битрикс. 
Иначе к чему это всё?...



В подобной схеме ничто не помешает пользователю прислать заголовок
Authorization с якобы данными для бекенда, а на самом деле запрос
сделать туда, где никакие пароли бекенд не проверяет - тем самым
сделав аутентификацию на уровне nginx'а бессмысленной.
на девел-машину? И толку? Это простое соблюдение лицензии битрикса, не 
более.



Вариант, который будет работать - это явно разделить (e.g., на
уровне location'ов) те адреса, где за аутентификацию отвечает
nginx, и те, где этим занимается бекенд.
после авторизации в админке ВСЕ урлы связаны с админкой, включая корень 
сайта. Сверху появляется меню отладки и редактирования.



Потому что "^~" - это не "признак регэкспа". Это, наоборот,

Где это _внятно_ прописано в доке?
http://dragonflybsd.blogspot.ru/2012/12/nginx-location.html
вот тут чуть внятнее, с интерпретацией.


запрет на поиск по location'ам, заданным регулярными выражениями,
в случае совпадения данного _префиксного_ location'а.

Повторю ссылку:

http://nginx.org/r/location/ru

Настоятельно рекомендую внимательно прочитать описание хотя бы
пару раз.
Читал, не один десяток раз, но многое там настолько невнятно, что 
приходится идти методом тыка или спрашивать в рассылке. Ну или из 
исходников, что пока мне недоступно.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: auth_digest -- несколько вопросов

2014-02-26 Пенетрантность denis

26.02.2014 19:07, Maxim Dounin пишет:

Есть ряд проектов, которые программерам надо выставить в мир, но
а) проблема, что могут проиндексировать, даже несмотря на robots.txt

Это решает любая аутентификация, будь то basic или digest.

это понятно.


б) это прямо запрещает лицензия битрикса, 1 лицензия - 1 место размещения.
Поэтому искали метод такого выставления, кроме VPN.

Т.е. есть сайт, раздающийся по http, и чтобы раздать то же самое
(часть того же самого) по https будет нужна дополнительная
лицензия?
Нет, по https тоже можно отдавать. Нельзя отдавать с разных внешних 
серверов (продакшн отдельно, тестовые сервера отдельно)

в чистом виде https нам ничем не поможет, все-равно нужна авторизация.


По моему, вас неверно информировали.  По крайней мере
ничего подобного я там не вижу (так удивился утверждению, что
нашёл и посмотрел).  Есть расплывчатое определение термина "сайт",
к которому и привязаны лицензионные ограничения, но никаких
утверждений, позволяющих сделать вывод о недопустимости https там
не видно.  Более того, даже требования использовать только один
домен не видно.

http://www.1c-bitrix.ru/download/manuals/ru/EULA_BUS_12.docx
4.3. Программа может быть временно установлена на дополнительный 
компьютер (ЭВМ) с целью использования исключительно для работ по 
разработке, тестированию и/или наполнению Сайта при условии отсутствия 
любого "внешнего" доступа к ней (в том числе из сети Интернет или извне 
локальной сети Пользователя). Указанная копия Программы должна быть 
немедленно удалена после завершения вышеперечисленных работ.


http://dev.1c-bitrix.ru/community/forums/forum6/topic31164/
более того, даже для разработки -- не более 1 машины.


а почему не будет работать вариант с разделением? например, проверяем куку
авторизации, если есть авторизация битриксом - просто отдаем, иначе
подключаем digest

Нет ничего общего между basic-аутентификацией и куками.  Ну разве
что кроме собственно протокола HTTP.

http://en.wikipedia.org/wiki/Basic_access_authentication
ну не куки а хидеры. Если мы авторизовались через тот же curl - 
следующий запрос без спец мер снова будет как от неавторизованного.



Судя по описанию, правильное решение вашей проблемы - вместо
"location @apache" сделать отдельный include-файл с нужной
конфигурацией проксирования и использовать его.

Ну и откройте для себя наследование значений директив в конфигах
nginx'а, это обычно сильно сокращает размеры конфигов.

переработаем конфиги, спасибо.


кстати, если локейшн описан как ^~, но выше есть другой локейшн на тот же ~
.jpg, все-равно в этой секции не окажемся.

Это не так.  Если у максимально совпавшего статического location'а
есть модификатор "^~", то регулярные выражения не проверяются.  И
от порядка это не зависит.

location ^~ /aaa/a2/ {
действительно работает
location ^~ /aaa/a(1|2)/ {
уже нет. В таком случае непонятно, почему просто не написать location 
/aaa/a2/ и почему не срабатывает признак регэкспа.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx proxy аутентификация

2014-02-26 Пенетрантность denis


Сессии можно хранить где угодно если есть свой обработчик - redis, 
mongodb, да хоть в mysql, правда производительность будет хромать :)
у битрикса в версии web-cluster хранение в мускуле включается в 1 клик и 
это наиболее простой метод, там синхронизация сессий оказалась реальной 
проблемой, даже когда прописали на обоих серверах в php.ini

session.save_handler = memcached
session.save_path = "server:11211"
все-равно если попадаем на 2 сервер, авторизации как бы нет, хотя через 
ngrep видно, что были запросы в memcached. Причины пока не поняли.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: auth_digest -- несколько вопросов

2014-02-26 Пенетрантность denis

26.02.2014 18:14, Maxim Dounin пишет:

Единственный вариант, который _теоретически_ может работать - это
использование нескольких альтернативных схем аутентификации.
Клиенту отправляется несколько разных WWW-Authenticate заголовков,
с разными схемами аутентификации, а он выбирает из них ту, которая
ему больше нравится.  На практике - и так тоже будут проблемы.
То, что вы описываете - работать не будет гарантированно.

BTW, а с какой целью используется digest-аутентификация?
Безотносительно конкретного модуля - проблем она, IMHO, создаёт
больше, чем решает.  Обычно проще и правильнее использовать basic
вкупе с ssl.

Есть ряд проектов, которые программерам надо выставить в мир, но
а) проблема, что могут проиндексировать, даже несмотря на robots.txt
б) это прямо запрещает лицензия битрикса, 1 лицензия - 1 место размещения.
Поэтому искали метод такого выставления, кроме VPN.

а почему не будет работать вариант с разделением? например, проверяем 
куку авторизации, если есть авторизация битриксом - просто отдаем, иначе 
подключаем digest


и попутно маленький вопрос: как можно принудительно переслать в 
именованный location? что-то типа try_files @apache
например, если надо описать ряд локейшенов, но не через регэкспы, чтобы 
приоритет не имел значения. например

location @apache {
proxy_pass .
}

location = /a1/ {
try_files @apache;
}
location /a2/ {
try_files @apache;
}

таких секций может быть с десяток. Если объединить в 1 локейшн вида ~ 
/a(1|2)/ - то если выше будет прописан показ картинок (~ .(jpg|png)), то 
в эти секции запрос уже не попадает.
Нужно это, чтобы вынести их в отдельный конфиг и инклудить в куче 
проектов, но не заботиться о порядке блоков. Без инклудов не вариант, 
править 50+ конфигов руками хотя бы раз в неделю - извините, нам такого 
не надо. Писать систему шаблонов, после каждого изменения заново 
пересоздавать все файлы-конфиги -- работы не на 1 месяц, конфигов много 
и они сильно разные.
кстати, если локейшн описан как ^~, но выше есть другой локейшн на тот 
же ~ .jpg, все-равно в этой секции не окажемся.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx proxy аутентификация

2014-02-26 Пенетрантность denis

26.02.2014 18:07, Alex Belyansky пишет:

On 26.02.2014 17:41, denis wrote:

24.02.2014 15:55, komiller пишет:

Здравствуйте.

Прошу помочь, не давно перешел на нгинх и все бы прекрасно да только
проблемка одна. Nginx я использую для балансировки нагрузки между двумя
серверами,
при входе в сайт есть авторизация и соответсвенно каптча, так вот 
каптча все

время ругается что код не правильный хотя все правильно.
куки не синхронизированы, ip_hash - вариант. Но можно писать куки в 
nfs шару или общий memcached, проблема тоже будет неактуальна.




NFS - плохая затея! Уже пробовали. Даже при невысокой посещяемости, 
заметно притормаживает. Общий memcached это уже ближе к делу, но надо 
быть осторожным при использовании - http://habrahabr.ru/post/38261/

28 августа 2008 в 13:52
думаю, за 6 лет ситуация сильно поменялась. Плюс "или общий memcached" - 
нет проблем синхронизации. И какие проблемы там могут быть? человек 
открыл страницу, секунд 10 разгадывал-вводил капчу, отправил. Какие 
проблемы с блокировками? У каждого человека своя сессия.
какие-то проблемы возможны, если это интернет-магазин, добавление товара 
в 1 клик, медленный канал, человек быстро кликает. И то, если 
обновляется его локальная кука и она уходит - проблем быть не должно, а 
вообще правильнее например писать в куку номер корзины, а клик - 
аякс-запрос, который пишет сразу в базу а не в куку.

а где ещё можно хранить сессии? :)

зы " каптча все время ругается что код не правильный" - не всё время, а 
принимает капчу только со 2-3 раза (хотя зависит от количества 
серверов). Тоже с таким сталкивались, но причина была быстро понята.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx proxy аутентификация

2014-02-26 Пенетрантность denis

24.02.2014 15:55, komiller пишет:

Здравствуйте.

Прошу помочь, не давно перешел на нгинх и все бы прекрасно да только
проблемка одна. Nginx я использую для балансировки нагрузки между двумя
серверами,
при входе в сайт есть авторизация и соответсвенно каптча, так вот каптча все
время ругается что код не правильный хотя все правильно.
куки не синхронизированы, ip_hash - вариант. Но можно писать куки в nfs 
шару или общий memcached, проблема тоже будет неактуальна.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

auth_digest -- несколько вопросов

2014-02-26 Пенетрантность denis

Добрый день.

Возник ряд вопросов про auth_digest, в частности:
1) можно ли одновременно использовать digest и basic -- например, digest 
закрывает сайт из мира, а внутри есть /bitrix/ со своим basic для 
админки. Пока попытки такого совместного запуска ни к чему хорошему не 
привели
2) есть просто файлик .txt, открываем, при обновлении уже через 5 секунд 
- хочет пароль снова. Хотя в конфиге прописано 60с


server
{
server_name test.site.ru;

include conf/listen;

auth_digest "private";
auth_digest_user_file /usr/local/etc/nginx/passwd.digest;
auth_digest_timeout   60s;
auth_digest_shm_size  4m;

location / {
auth_digest "private";

proxy_pass http://192.168.1.1;
include conf/proxy;
}
}

если по 1 требуется только 1 вид авторизации - есть идея выделения 
отдельной секции под авторизованных, какие куки выставляет битрикс? или 
на что там правильнее опираться.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: duplicate "location /"

2014-02-17 Пенетрантность denis

16.02.2014 21:10, nik222 пишет:

М.А. Мохначевский Wrote:
---

Пробовали location / {
  ...
  include file;
  ...
} ?



проблема как раз таки в том, что в инклуде есть "location /" и при таком
варианте варнинги и вываливаются, так как "location /" задваивается
а убрать из инклуда лишний "location /" не позволяет религия? оставив 
"location /" в основном конфиге. Как бонус -- можно этот же блок 
подключить в любой другой location.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: nginx на разных ос

2014-02-17 Пенетрантность denis

17.02.2014 13:16, skeletor пишет:

ньюансы:

новые что? Кто такие ансы?

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: chunkin сломан?

2014-02-11 Пенетрантность denis

12.02.2014 8:49, Sargas пишет:
Этот модуль уже не нужен, причем давно. Так же не нужно что-то в 
конфиге прописывать. Это просто работает :)

А где про это офдоки?
и кто знает, с каких версий nginx оно было рабочее и в каких выпилено.

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

chunkin сломан?

2014-02-11 Пенетрантность denis

добрый день.
Пытались пересобрать nginx из портов и вдруг получили
nginx -t
nginx: [emerg] unknown directive "chunkin" in 
/usr/local/etc/nginx/sites/test..ru:18

nginx: configuration file /usr/local/etc/nginx/nginx.conf test failed

там блок
   chunkin on;
error_page 411 = @my_411_error;
location @my_411_error {
chunkin_resume;
}
При этом в доке http://wiki.nginx.org/HttpChunkinModule
This module is no longer needed for Nginx 1.3.9+ because since 1.3.9, 
the Nginx core already has built-in support for the chunked request bodies.


Что с ним делать теперь?

*# nginx -v
nginx version: nginx/1.4.4

FreeBSD 8.4-BETA1
*
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Файловое хранилище

2014-02-09 Пенетрантность denis

08.02.2014 0:32, Валентин Бартенев пишет:

On Friday 07 February 2014 18:45:51 denis wrote:
[..]

А есть еще вариант -- аппаратный контроллер с поддержкой кэша чтения на
ssd, и после прогрева кэша особого тюнинга уже не надо, и так будет
быстро отдавать. Или, если данных относительно немного, просто перевести
файлы на ssd.


Почему именно аппаратный?

bcache, dm-cache, EnhanceIO
bcache пока в нестабильных версиях ядра (то есть по сути еще бета), с 
остальным пока общаться не доводилось. Но тоже вариант, да.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Файловое хранилище

2014-02-07 Пенетрантность denis

07.02.2014 18:39, Anton Sayetsky пишет:



AIO + directio для больших файлов? Ну и много памяти, да

Много памяти + directio? Но зачем?
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
directio - есть некий максимальный размер, свыше которого кэшировать 
обычно бесполезно, но это ведь может быть и 1 Гб, зависит от размера 
файлов, что за хранилище, насколько часто идут обращения, процент 
горячих файлов итд.


А есть еще вариант -- аппаратный контроллер с поддержкой кэша чтения на 
ssd, и после прогрева кэша особого тюнинга уже не надо, и так будет 
быстро отдавать. Или, если данных относительно немного, просто перевести 
файлы на ssd.


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Файловое хранилище

2014-02-07 Пенетрантность denis

07.02.2014 10:28, Pascal2 пишет:

Добрый день!
nginx отдает в 100% статику (файловый архив),
несколько сотен коннектов.

подскажите как оптимально настроить nginx, что бы снизить нагрузку на
дисковую систему (что бы файлы кешировались в памяти).

Спасибо!

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,247271,247271#msg-247271

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

AIO + directio для больших файлов? Ну и много памяти, да

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: анализ аргументов в arg*

2014-02-04 Пенетрантность denis

03.02.2014 20:23, Валентин Бартенев пишет:


С $arg_SID всё хорошо, всё плохо с "$arg_SID=110",  в последнем случае nginx
ищет среди параметров переменную с именем "SID=110".

Ваше условие сработало бы на запрос: ?SID=110=110&PID=200

Пробелы вокруг операторов в if обязательны.
это очень важное уточнение, которое я нигде не увидел. Если этого нет на 
сайте - можно отразить в вики + основном сайте?


___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: лимиты активных соединений?

2014-02-03 Пенетрантность denis

02.02.2014 17:10, denis пишет:
Подскажите, где проходит грань между балансировщиком на nginx и 
аппаратным? Есть опыт работы системы, когда nginx-status говорил про 5к

Reading: 6 Writing: 354 Waiting: 4623

А где проходит грань, когда уже нужно что-то аппаратное смотреть?
Поделитесь опытом нагруженного использования...

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

https://www.google.ru/?q="100k%20connenctions%20nginx";
забавно.

http://highscalability.com/blog/2013/5/13/the-secret-to-10-million-concurrent-connections-the-kernel-i.html
http://www.kegel.com/c10k.html

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

  1   2   >