From kohaner на gmail.com Sat Apr 1 05:36:58 2017 From: kohaner на gmail.com (DK) Date: Sat, 1 Apr 2017 11:36:58 +0600 Subject: =?UTF-8?B?0KDQvtGB0YIg0LrQvtC70LjRh9C10YHRgtCy0LAg0L/QvtC00LrQu9GO0YfQtdC9?= =?UTF-8?B?0LjQuSDQsiDRgdC+0YHRgtC+0Y/QvdC40Lggd3JpdGluZw==?= Message-ID: Добрый день, В начале марта обновил nginx до версии nginx-1.11.10-1.el7.ngx.x86_64 и заметил, что постепенно растет количество подключений в состоянии writing http://take.ms/p541u Куда смотреть, чтобы найти причину такого роста? PS: Падение количества подключения - это последствия добавление второго сервера в качестве фронтенда и балансировки трафика через DNS. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-ru на sadok.spb.ru Sat Apr 1 08:55:30 2017 From: nginx-ru на sadok.spb.ru (Dmitry Ivanov) Date: Sat, 1 Apr 2017 11:55:30 +0300 Subject: =?UTF-8?B?UmU6INCg0L7RgdGCINC60L7Qu9C40YfQtdGB0YLQstCwINC/0L7QtNC60LvRjtGH?= =?UTF-8?B?0LXQvdC40Lkg0LIg0YHQvtGB0YLQvtGP0L3QuNC4IHdyaXRpbmc=?= In-Reply-To: References: Message-ID: <1161101497.20170401115530@sadok.spb.ru> Здравствуйте, DK. Вы писали 1 апреля 2017 г., 8:36:58: > Куда смотреть, чтобы найти причину такого роста? После этого не значит в следствии этого. Разве нет? -- С уважением, Dmitry nginx-ru на sadok.spb.ru From vbart на nginx.com Sat Apr 1 13:14:21 2017 From: vbart на nginx.com (=?utf-8?B?0JLQsNC70LXQvdGC0LjQvSDQkdCw0YDRgtC10L3QtdCy?=) Date: Sat, 01 Apr 2017 16:14:21 +0300 Subject: =?UTF-8?B?UmU6INCg0L7RgdGCINC60L7Qu9C40YfQtdGB0YLQstCwINC/0L7QtNC60LvRjtGH?= =?UTF-8?B?0LXQvdC40Lkg0LIg0YHQvtGB0YLQvtGP0L3QuNC4IHdyaXRpbmc=?= In-Reply-To: References: Message-ID: <2596483.AFndCJTO3V@vbart-laptop> On Saturday 01 April 2017 11:36:58 DK wrote: > Добрый день, > > В начале марта обновил nginx до версии nginx-1.11.10-1.el7.ngx.x86_64 и > заметил, что постепенно растет количество подключений в состоянии writing > > http://take.ms/p541u > > Куда смотреть, чтобы найти причину такого роста? > Всегда первым делом нужно смотреть в логи. В любой ситуации с любой программой. =) -- Валентин Бартенев From kohaner на gmail.com Sun Apr 2 05:41:46 2017 From: kohaner на gmail.com (DK) Date: Sun, 2 Apr 2017 11:41:46 +0600 Subject: =?UTF-8?B?UmU6INCg0L7RgdGCINC60L7Qu9C40YfQtdGB0YLQstCwINC/0L7QtNC60LvRjtGH?= =?UTF-8?B?0LXQvdC40Lkg0LIg0YHQvtGB0YLQvtGP0L3QuNC4IHdyaXRpbmc=?= In-Reply-To: References: Message-ID: Добрый день, Касательно этой проблемы, в логах тишина есть только ошибки от роботов 2017/04/02 07:50:37 [error] 8434#8434: *76017536 "/etc/nginx/html/PMA2012/index.html" is not found (2: No such file or directory), client: 131.103.139.131, server: , request: "HEAD http://x.x.x.x:80/PMA2012/ HTTP/1.1", host: "x.x.x.x" 2017/04/02 07:50:37 [error] 8434#8434: *76017536 "/etc/nginx/html/pma2012/index.html" is not found (2: No such file or directory), client: 131.103.139.131, server: , request: "HEAD http://x.x.x.x:80/pma2012/ HTTP/1.1", host: "x.x.x.x" 2017/04/02 07:50:37 [error] 8434#8434: *76017536 "/etc/nginx/html/PMA2011/index.html" is not found (2: No such file or directory), client: 131.103.139.131, server: , request: "HEAD http://x.x.x.x:80/PMA2011/ HTTP/1.1", host: "x.x.x.x" и иногда возникают ошибки, что нет возможности переименовать файл (использую proxy_store) 2017/04/02 11:24:27 [crit] 8433#8433: *76159901 rename() "/var/www/virtual/ xxxxx.ru/temp/0000330774" to "/var/www/virtual/ xxxxx.ru/images/250s/lh3.googleusercontent.com/vy9kyUGvT6j3KlUNO1IsJbaFEYrvDGf7pWIe_VLHGci8IQ1vYgtXrU3X2HvGhzZMzmjYL0615aPpnqqA4NTKTKiag_hGmK0yO4Em0NHwQqRikcM07uh89KASsLLq9W2XFoOHyg9KsZYbjsAPmzSMUoem2VuI02bWwUF71sJn3v2uBnj-aRu843Fxh0E7iokVNXyoiEesIQfIlAGeN8Fe6nRtY5GFcpyjV1brXuTvW-7lpEd" failed (36: File name too long) while reading upstream, client: x.x.203.204, server: xxxxxxx, но обе эти ошибки были и на предыдущей версии nginx (точно не помню, но была версия в районе 0.9.8 ). Проблемная инсталяция работает как кеширующий сервер для раздачи статики. При обращении к нему он смотрит есть такой файл или нет, если файла нет то забирает файл с главного сервера и сохраняет его себе (proxy_store). У инсталяции (на другом сервере) которая работает как обычный фронт-энд перед апачем, такой проблемы нет. Версия ОС, настройки ОС и версии nginx везде одинаковые. PS: По глупости подписался в режиме дайджеста (уже изменил), поэтому не могу ответить на индивидуальные письма, поэтому отвечаю сам себе 1 апреля 2017 г., 11:36 пользователь DK написал: > Добрый день, > > В начале марта обновил nginx до версии nginx-1.11.10-1.el7.ngx.x86_64 и > заметил, что постепенно растет количество подключений в состоянии writing > > http://take.ms/p541u > > Куда смотреть, чтобы найти причину такого роста? > > PS: Падение количества подключения - это последствия добавление второго > сервера в качестве фронтенда и балансировки трафика через DNS. > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Mon Apr 3 03:25:47 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Sun, 02 Apr 2017 23:25:47 -0400 Subject: =?UTF-8?B?0JLQvtC/0YDQvtGBINC/0L4gVExTINC4INCw0YPRgtC10L3RgtC40YTQuNC60LA=?= =?UTF-8?B?0YbQuNC4?= Message-ID: <31a0064a85b50dca9ef4c7a88ce9d8b6.NginxMailingListRussian@forum.nginx.org> Здравствуйте, уважаемые профи! Возник вопрос (точнее наверное два ). Подняли NGinx для доступа к одному из защищаемых ресурсов. Сделал двустороннюю аутентификацию. Прикрутил ГОСТ. Все взлетело. НО... появилась проблема. Когда использую сертификаты, выданные собственным УЦ, где root CA самоподписаный - все нормально летает авторизуется... все гуд. Беда в том, что для авторизации надо использовать сертификаты ЭП, выданные УЦ нашей вышестоящей организации, а там root CA подписан промежуточным сертификатом УЦ минкозвязи, который в подписан сертификатом головного УЦ минкомсвязи (он самоподписанный). В таком случае у клиента происходит запрос сертификата, причем список сертификатов правильный. НО после выбора сертификата ошибка 400 - и все. Пробовал catом слеплять сертификаты в разной последовательности, пробовал в ssl_trusted_certificate накидывать .... ничего. У клиента все сертфикаты установлены. Вот конфиг server { listen 443 ssl; server_name tls.oepak22.ru; ssl_certificate /etc/nginx/serts/server.crt; ssl_certificate_key /etc/nginx/serts/server.key; large_client_header_buffers 4 16k; ssl_ciphers GOST2001-GOST89-GOST89:HIGH:MEDIUM; #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_protocols TLSv1; ssl_prefer_server_ciphers on; ssl_client_certificate /etc/nginx/serts/ca1.crt; #ssl_client_certificate /etc/nginx/serts/xcc.crt; ssl_crl /etc/nginx/serts/crl.pem; ssl_verify_client on; keepalive_timeout 70; location / { root /www/; index index.html; } location /deloweb { proxy_pass http://10.33.1.7/deloweb; } PS. Оговорюсь сразу, что server.crt выдан как раз таки УЦ, который тестовый и самоподписанный root CA. Нет ли ничего в этом криминального, что сертификат сервера и сертификат клиентов выданы разными УЦ. И еще вопрос: возможно ли использовать одновременно несколько ssl_client_certificate? Актуально потому, что у нас в регионе несколько УЦ. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273305#msg-273305 From chipitsine на gmail.com Mon Apr 3 03:30:12 2017 From: chipitsine на gmail.com (=?UTF-8?B?0JjQu9GM0Y8g0KjQuNC/0LjRhtC40L0=?=) Date: Mon, 3 Apr 2017 08:30:12 +0500 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <31a0064a85b50dca9ef4c7a88ce9d8b6.NginxMailingListRussian@forum.nginx.org> References: <31a0064a85b50dca9ef4c7a88ce9d8b6.NginxMailingListRussian@forum.nginx.org> Message-ID: добрый день! у вас на сайте сказано, что это "электронное правительство алтайского края", насколько я понимаю, как таковой ГОСТ мало кому интересен, интересно сертифицированное решение. у того же Крипто про сертификаты есть, у nginx + openssl + ГОСТ - нет, подскажите, как вы собираетесь решать этот вопрос ? 3 апреля 2017 г., 8:25 пользователь DemDA написал: > Здравствуйте, уважаемые профи! > Возник вопрос (точнее наверное два ). > Подняли NGinx для доступа к одному из защищаемых ресурсов. Сделал > двустороннюю аутентификацию. Прикрутил ГОСТ. Все взлетело. НО... появилась > проблема. Когда использую сертификаты, выданные собственным УЦ, где root CA > самоподписаный - все нормально летает авторизуется... все гуд. Беда в том, > что для авторизации надо использовать сертификаты ЭП, выданные УЦ нашей > вышестоящей организации, а там root CA подписан промежуточным сертификатом > УЦ минкозвязи, который в подписан сертификатом головного УЦ минкомсвязи (он > самоподписанный). В таком случае у клиента происходит запрос сертификата, > причем список сертификатов правильный. НО после выбора сертификата ошибка > 400 - и все. Пробовал catом слеплять сертификаты в разной > последовательности, пробовал в ssl_trusted_certificate накидывать .... > ничего. У клиента все сертфикаты установлены. > Вот конфиг > server { > listen 443 ssl; > server_name tls.oepak22.ru; > ssl_certificate /etc/nginx/serts/server.crt; > ssl_certificate_key /etc/nginx/serts/server.key; > large_client_header_buffers 4 16k; > ssl_ciphers GOST2001-GOST89-GOST89:HIGH:MEDIUM; > #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; > ssl_protocols TLSv1; > ssl_prefer_server_ciphers on; > ssl_client_certificate /etc/nginx/serts/ca1.crt; > #ssl_client_certificate /etc/nginx/serts/xcc.crt; > ssl_crl /etc/nginx/serts/crl.pem; > ssl_verify_client on; > keepalive_timeout 70; > location / { > root /www/; > index index.html; > } > > location /deloweb { > proxy_pass http://10.33.1.7/deloweb; > } > PS. Оговорюсь сразу, что server.crt выдан как раз таки УЦ, который тестовый > и самоподписанный root CA. Нет ли ничего в этом криминального, что > сертификат сервера и сертификат клиентов выданы разными УЦ. > И еще вопрос: возможно ли использовать одновременно несколько > ssl_client_certificate? Актуально потому, что у нас в регионе несколько УЦ. > > Posted at Nginx Forum: https://forum.nginx.org/read. > php?21,273305,273305#msg-273305 > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From mdounin на mdounin.ru Mon Apr 3 12:28:11 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Mon, 3 Apr 2017 15:28:11 +0300 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <31a0064a85b50dca9ef4c7a88ce9d8b6.NginxMailingListRussian@forum.nginx.org> References: <31a0064a85b50dca9ef4c7a88ce9d8b6.NginxMailingListRussian@forum.nginx.org> Message-ID: <20170403122811.GW13617@mdounin.ru> Hello! On Sun, Apr 02, 2017 at 11:25:47PM -0400, DemDA wrote: > Здравствуйте, уважаемые профи! > Возник вопрос (точнее наверное два ). > Подняли NGinx для доступа к одному из защищаемых ресурсов. Сделал > двустороннюю аутентификацию. Прикрутил ГОСТ. Все взлетело. НО... появилась > проблема. Когда использую сертификаты, выданные собственным УЦ, где root CA > самоподписаный - все нормально летает авторизуется... все гуд. Беда в том, > что для авторизации надо использовать сертификаты ЭП, выданные УЦ нашей > вышестоящей организации, а там root CA подписан промежуточным сертификатом > УЦ минкозвязи, который в подписан сертификатом головного УЦ минкомсвязи (он > самоподписанный). В таком случае у клиента происходит запрос сертификата, > причем список сертификатов правильный. НО после выбора сертификата ошибка > 400 - и все. Пробовал catом слеплять сертификаты в разной Ошибка 400 всегда сопровождается информацией в error-логе о причинах ошибки, обычно - на уровне info. Стоит заглянуть в лог и посмотреть, что именно там написано (а если ничего не написано - поправить уровень логгирования). > последовательности, пробовал в ssl_trusted_certificate накидывать .... > ничего. У клиента все сертфикаты установлены. > Вот конфиг > server { > listen 443 ssl; > server_name tls.oepak22.ru; > ssl_certificate /etc/nginx/serts/server.crt; > ssl_certificate_key /etc/nginx/serts/server.key; > large_client_header_buffers 4 16k; > ssl_ciphers GOST2001-GOST89-GOST89:HIGH:MEDIUM; > #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; > ssl_protocols TLSv1; > ssl_prefer_server_ciphers on; > ssl_client_certificate /etc/nginx/serts/ca1.crt; > #ssl_client_certificate /etc/nginx/serts/xcc.crt; > ssl_crl /etc/nginx/serts/crl.pem; > ssl_verify_client on; > keepalive_timeout 70; > location / { > root /www/; > index index.html; > } > > location /deloweb { > proxy_pass http://10.33.1.7/deloweb; > } Судя по конфигу, вы не пытались задавать ssl_verify_depth, меж тем для случая, когда используются промежуточные сертификаты, это необходимо. Подробнее тут: http://nginx.org/ru/docs/http/ngx_http_ssl_module.html#ssl_verify_depth > PS. Оговорюсь сразу, что server.crt выдан как раз таки УЦ, который тестовый > и самоподписанный root CA. Нет ли ничего в этом криминального, что > сертификат сервера и сертификат клиентов выданы разными УЦ. Нет, сертификат самого не влият на проверку сертификатов клиентов. > И еще вопрос: возможно ли использовать одновременно несколько > ssl_client_certificate? Актуально потому, что у нас в регионе несколько УЦ. В указанный в директиве файл можно положить произвольное количество доверенных сертификатов. -- Maxim Dounin http://nginx.org/ From nginx-forum на forum.nginx.org Mon Apr 3 12:29:54 2017 From: nginx-forum на forum.nginx.org (Kacblm) Date: Mon, 03 Apr 2017 08:29:54 -0400 Subject: =?UTF-8?B?aGVhbHRoIGNrZWNrINC80L7QttC10YIg0YHQtNCw0YLRjCDRgdC+0L7QsdGJ0LU=?= =?UTF-8?B?0L3QuNGPINC90LAg0L/QvtGH0YLRgz8=?= Message-ID: <931f46f51e93c8d0eaabc968facfb607.NginxMailingListRussian@forum.nginx.org> Добрый день. Подскажите пожалуйста, когда helth_check помечает сервер неисправным, можно как то получать об этом оповещения? в примере: location /check { proxy_pass http://backend; health_check; } Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273309,273309#msg-273309 From maxim на nginx.com Mon Apr 3 12:32:04 2017 From: maxim на nginx.com (Maxim Konovalov) Date: Mon, 3 Apr 2017 15:32:04 +0300 Subject: =?UTF-8?B?UmU6IGhlYWx0aCBja2VjayDQvNC+0LbQtdGCINGB0LTQsNGC0Ywg0YHQvtC+0LE=?= =?UTF-8?B?0YnQtdC90LjRjyDQvdCwINC/0L7Rh9GC0YM/?= In-Reply-To: <931f46f51e93c8d0eaabc968facfb607.NginxMailingListRussian@forum.nginx.org> References: <931f46f51e93c8d0eaabc968facfb607.NginxMailingListRussian@forum.nginx.org> Message-ID: <08bd4dfa-a2bc-06c5-dc79-defe098a38e7@nginx.com> Добрый день. On 03/04/2017 15:29, Kacblm wrote: > Добрый день. > > Подскажите пожалуйста, когда helth_check помечает сервер неисправным, можно > как то получать об этом оповещения? > > в примере: > > location /check { > proxy_pass http://backend; > health_check; > } > Если у вас nginx-plus, то откройте тикет в поддержке, там вам подскажут. -- Maxim Konovalov From nginx-forum на forum.nginx.org Mon Apr 3 13:14:28 2017 From: nginx-forum на forum.nginx.org (Kacblm) Date: Mon, 03 Apr 2017 09:14:28 -0400 Subject: =?UTF-8?B?UmU6IGhlYWx0aCBja2VjayDQvNC+0LbQtdGCINGB0LTQsNGC0Ywg0YHQvtC+0LE=?= =?UTF-8?B?0YnQtdC90LjRjyDQvdCwINC/0L7Rh9GC0YM/?= In-Reply-To: <931f46f51e93c8d0eaabc968facfb607.NginxMailingListRussian@forum.nginx.org> References: <931f46f51e93c8d0eaabc968facfb607.NginxMailingListRussian@forum.nginx.org> Message-ID: <96de0a3ee695abcf8ebd2f02c0460427.NginxMailingListRussian@forum.nginx.org> Почему когда пишешь health_check в локейшене где указано ещё куча всего помимо proxy_pass http://backend, проверка не проходит? Как решить эту проблему? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273309,273310#msg-273310 From nginx-forum на forum.nginx.org Tue Apr 4 01:52:01 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Mon, 03 Apr 2017 21:52:01 -0400 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <20170403122811.GW13617@mdounin.ru> References: <20170403122811.GW13617@mdounin.ru> Message-ID: Максим, здравствуйте! Спасибо за ответ. ssl_verify_depth задавал. Но, к сожалению, это не возымело эффекта. Сегодня буду исследовать вопрос в сторону обновления OpenSSL до версии выше 1.0.2. Что касается Вашего замечания относительно "В указанный в директиве файл можно положить произвольное количество доверенных сертификатов." - не совсем понятно. Несколько файлов не подсунешь. Пробовал соединить их catом в один - все равно используется только первый из сцепленного файла. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273361#msg-273361 From nginx-forum на forum.nginx.org Tue Apr 4 02:01:11 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Mon, 03 Apr 2017 22:01:11 -0400 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: References: Message-ID: Здравствуйте, Илья! Спасибо за ответ. С удовольствием подскажу. Решение предполагается не для защиты информационных систем электронного правительства, а для работы с системой электронного документооборота, которая не ГИС и не ИСПДН, однако владельцем не определена как общесдоступная. Для защит информ. систем. используется решение ViPNet Custom. Здесь не столько ГОСТ интересен, сколько авторизация, ибо УЦ нашей вышестоящей организации выдает ЭП только гос. органам и органам местного самоуправления. Чтобы не заморачиваться с выпуском дополнительных SSL-сертификатовбыло принято решение использовать уже ранее выданные им сертификаты. Однако, так получилось, что наша вышестоящая организация открыла два УЦ (зачем - не знаю), один ПАК Випнет, второй КриптоПРО. Хотя до этого я им разработал форму генерации ключей ЭП (ActiveX) https://www.oepak22.ru/request (надо предварительно настроить рабочее место, если понадобиться расскажу). Можете ее использовать, или забрать себе. Не жалко. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273362#msg-273362 From nginx-forum на forum.nginx.org Tue Apr 4 02:52:11 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Mon, 03 Apr 2017 22:52:11 -0400 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: References: <20170403122811.GW13617@mdounin.ru> Message-ID: Проблема решилась установкой версии OpenSSL версии 1.0.2 и выше. И добавления опции ssl_verify_depth 4; (с более старой версией OpenSSL не работало). Кроме того, в ssl_client_certificate необходимо указать сертификат ГОЛОВНОГО УЦ МКС (самоподписанного). Спасибо всем. Проблема с несколькими УЦ таким образом тоже скорее всего решена (еще отпишу). Так как сертификат второго УЦ тоже подписан тем же головным УЦ. Только есть еще ЭП, подписанные старым корневым (самоподписанным, но это скоро уйдет. Вопрос открыт только в том, как использовать два CRL.Спасибо Вам за участие. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273364#msg-273364 From nginx на mva.name Tue Apr 4 03:12:23 2017 From: nginx на mva.name (Vadim A. Misbakh-Soloviov) Date: Tue, 04 Apr 2017 10:12:23 +0700 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: References: Message-ID: <5625900.bPBRUi4u3v@note> > до этого я им разработал форму генерации ключей ЭП (ActiveX) :'( Так вот он, оказывается, один из тех самых "исполнителей", из-за которых саботировали внедрение нормальных ОС в судах, школах и прочих госорганах :) P.S.: да, я понимаю, что делали что заказывали. Просто до этого письма думалось что это какие-то эфемерные существа из параллельной вселенной. А тут, оказывается, что они здесь, в той же рассылке :) // хотя, судя по футеру писем, вы даже и не в рассылке, а в веб-морде к ней :) From nginx-forum на forum.nginx.org Tue Apr 4 03:25:28 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Mon, 03 Apr 2017 23:25:28 -0400 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <5625900.bPBRUi4u3v@note> References: <5625900.bPBRUi4u3v@note> Message-ID: <875a286b8df1215bf6f1c697d5f3b604.NginxMailingListRussian@forum.nginx.org> Ага. Сказанно было сделать - сделал. Не заморачивался. АктивХ ... тем более мне не заплатили. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273369#msg-273369 From nginx-forum на forum.nginx.org Tue Apr 4 03:31:22 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Mon, 03 Apr 2017 23:31:22 -0400 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <5625900.bPBRUi4u3v@note> References: <5625900.bPBRUi4u3v@note> Message-ID: <85d75a823a375b5b7f5601684bd9fd26.NginxMailingListRussian@forum.nginx.org> Кстати, что касается "Так вот он, оказывается, один из тех самых "исполнителей", из-за которых саботировали внедрение нормальных ОС в судах, школах и прочих госорганах :)". Насколько я знаю как раз таки школы, суды (по крайней мере приставы) перешли на линухи. Приставы - ГосЛинукс. А что касается гос. органов региональных и муниципальных - их никто не ограничивает. Они сами могут выбирать. Однако, как заставить кучу бухгалтерского софта, выпиленного под активХ и ДотНет работать на "нормальных ОС" ? Вайн тут не прет... это не 1С. Поэтому приходится для бухов держать окна открытыми.... Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273370#msg-273370 From nginx-forum на forum.nginx.org Tue Apr 4 03:35:30 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Mon, 03 Apr 2017 23:35:30 -0400 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <5625900.bPBRUi4u3v@note> References: <5625900.bPBRUi4u3v@note> Message-ID: <86c0acdc8088429a02fbb65b56af59d5.NginxMailingListRussian@forum.nginx.org> Vadim A. Misbakh-Soloviov, да и вот что я еще бы хотел сказать. Спасибо еще и российским разработчикам ГИСов, из-за которых приходится браузеры откатывать. Ибо как ребятки зацепились за NPAPI так и держаться... ничего делать с этим не желают. А браузеры говорят - пора забыть... а експлорер так не говорит... вот еще проблема. А, кстати, волею плюшевого димки винда попала в реестр российского ПО. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273371#msg-273371 From nginx на mva.name Tue Apr 4 03:46:51 2017 From: nginx на mva.name (Vadim A. Misbakh-Soloviov) Date: Tue, 04 Apr 2017 10:46:51 +0700 Subject: =?UTF-8?B?UmU6IFtPRkZUT1Atc3VidGhyZWFkXSDQktC+0L/RgNC+0YEg0L/QviBUTFMg0Lgg?= =?UTF-8?B?0LDRg9GC0LXQvdGC0LjRhNC40LrQsNGG0LjQuA==?= In-Reply-To: <85d75a823a375b5b7f5601684bd9fd26.NginxMailingListRussian@forum.nginx.org> References: <5625900.bPBRUi4u3v@note> <85d75a823a375b5b7f5601684bd9fd26.NginxMailingListRussian@forum.nginx.org> Message-ID: <6530578.QMYiZHTV8D@note> > Насколько я знаю как раз таки школы Школы, как раз, наиболее успешно саботировали. К тому же, особенной "пушкой" было то, что поручили внедрение компании, очень тесно афиллированной с Microsoft Rus. > суды (по крайней мере приставы) В том-то и дело, что только приставы. И запилили свой велосипед. А я говорил о ситуации когда сначала в 2008 Медведев говорил что "переходим на СПО", а в 2009 известная контора по распилу НИИ «Восход» берёт и выкатывает ГАС «Правосудие» (на пару с ГАС «Трибунал»), которые так же, как и у вас завязаны на этот ActiveX по самые гланды. Естесственно, учитывая сколько денег было вбухано на мраморные кабинеты председателей суда переобучение судей и помощником с самописных программ, написанных местными программистами на использование этих ГАСов, что при попытке внедрить СПО это было встречено очень сильным саботажем. > Однако, как заставить кучу бухгалтерского софта, выпиленного под > активХ Ну, как предприниматель, скажу, что вопрос вполне решаемый. Есть куча "облачных" систем документооборота (включая бухгалтерского), которым без разницы, какая ОС на пользовательском компьютере. И среди них даже есть те, которые так же имеют возможность быть установлены локально, в контролируемом окружении. > и ДотНет работать на "нормальных ОС" Ну, если не собирать совсем уж кривожопо (простите мой француский), то под mono всё прекрасно запускается (но для этого, да, необходимо какможно меньше использовать Win-специфичные штуки типа WinAPI и захардкоженных путей). > ? Вайн тут не прет... это не 1С. 1С, кстати, одна из тех самых систем, умеющих в облачность. Как ни странно... Только стоит неоправданно дороже аналогов. > Поэтому приходится для бухов держать окна открытыми.... Опять же, бухгалтерия - дело десятое. Можно было бы это как-то потерпеть, если бы не было саботажа в других сферах. From nginx-forum на forum.nginx.org Tue Apr 4 04:00:30 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Tue, 04 Apr 2017 00:00:30 -0400 Subject: =?UTF-8?B?UmU6IFtPRkZUT1Atc3VidGhyZWFkXSDQktC+0L/RgNC+0YEg0L/QviBUTFMg0Lgg?= =?UTF-8?B?0LDRg9GC0LXQvdGC0LjRhNC40LrQsNGG0LjQuA==?= In-Reply-To: <6530578.QMYiZHTV8D@note> References: <6530578.QMYiZHTV8D@note> Message-ID: Вадим, так ведь бюджетная бухгалтерия катастрофически сильно отличается от хозрасчетной. А учитывая интенсивно происходящие изменения в законодательстве.... облачные решения просто не успевают подстраиваться под эти изменения... к сожалению. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273373#msg-273373 From nginx-forum на forum.nginx.org Tue Apr 4 04:09:17 2017 From: nginx-forum на forum.nginx.org (DemDA) Date: Tue, 04 Apr 2017 00:09:17 -0400 Subject: =?UTF-8?B?UmU6IFtPRkZUT1Atc3VidGhyZWFkXSDQktC+0L/RgNC+0YEg0L/QviBUTFMg0Lgg?= =?UTF-8?B?0LDRg9GC0LXQvdGC0LjRhNC40LrQsNGG0LjQuA==?= In-Reply-To: <6530578.QMYiZHTV8D@note> References: <6530578.QMYiZHTV8D@note> Message-ID: Вадим, в основном Вы правы. Но обвинять в этом только госорганы не правильно. Тут еще надо присмотреться к разработчикам, которые не всегда готовы предлагать. Кроме того, что касается линуксов, то тут есть проблема - отсутствие единого стандарта единых наборов классов для разработки приложений под ИКСы (окна,кнопки, чекбоксы, радиобаттоны). По крайней мере мне такой универсальный инструмент не известен (если только JAVA- но это не всегда удобно и привязывает фактически к одному инструменту). Про моно ничего сказать не могу. Я к тому, что для гнома это одно, для кде это другое.... и.т.д. Хотя может я и ошибаюсь и такой инструмент уже есть. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273305,273374#msg-273374 From bgx на protva.ru Tue Apr 4 07:17:00 2017 From: bgx на protva.ru (Evgeniy Berdnikov) Date: Tue, 4 Apr 2017 10:17:00 +0300 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: References: <20170403122811.GW13617@mdounin.ru> Message-ID: <20170404071700.GH15932@protva.ru> On Mon, Apr 03, 2017 at 09:52:01PM -0400, DemDA wrote: > Максим, здравствуйте! Спасибо за ответ. ssl_verify_depth задавал. Но, к > сожалению, это не возымело эффекта. Сегодня буду исследовать вопрос в > сторону обновления OpenSSL до версии выше 1.0.2. Что касается Вашего > замечания относительно "В указанный в директиве файл можно положить > произвольное количество доверенных сертификатов." - не совсем понятно. > Несколько файлов не подсунешь. Пробовал соединить их catом в один - все > равно используется только первый из сцепленного файла. А там в результате cat'а структура правильная? Помнится, Comodo выдавал сертификаты, которые с виду PEM, но в конце файла перевода строки нет. Поэтому результат тупого cat'а к употреблению оказывается непригоден, хотя каждый сертификат по отдельности openssl'ем читается. -- Eugene Berdnikov From chipitsine на gmail.com Tue Apr 4 07:32:06 2017 From: chipitsine на gmail.com (=?UTF-8?B?0JjQu9GM0Y8g0KjQuNC/0LjRhtC40L0=?=) Date: Tue, 4 Apr 2017 12:32:06 +0500 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <20170404071700.GH15932@protva.ru> References: <20170403122811.GW13617@mdounin.ru> <20170404071700.GH15932@protva.ru> Message-ID: 4 апреля 2017 г., 12:17 пользователь Evgeniy Berdnikov написал: > On Mon, Apr 03, 2017 at 09:52:01PM -0400, DemDA wrote: > > Максим, здравствуйте! Спасибо за ответ. ssl_verify_depth задавал. Но, к > > сожалению, это не возымело эффекта. Сегодня буду исследовать вопрос в > > сторону обновления OpenSSL до версии выше 1.0.2. Что касается Вашего > > замечания относительно "В указанный в директиве файл можно положить > > произвольное количество доверенных сертификатов." - не совсем понятно. > > Несколько файлов не подсунешь. Пробовал соединить их catом в один - все > > равно используется только первый из сцепленного файла. > еще openssl не любит BEM (не совсем понимаю почему) > > А там в результате cat'а структура правильная? Помнится, Comodo выдавал > сертификаты, которые с виду PEM, но в конце файла перевода строки нет. > Поэтому результат тупого cat'а к употреблению оказывается непригоден, > хотя каждый сертификат по отдельности openssl'ем читается. > -- > Eugene Berdnikov > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From bgx на protva.ru Tue Apr 4 08:10:33 2017 From: bgx на protva.ru (Evgeniy Berdnikov) Date: Tue, 4 Apr 2017 11:10:33 +0300 Subject: =?UTF-8?B?UmU6INCS0L7Qv9GA0L7RgSDQv9C+IFRMUyDQuCDQsNGD0YLQtdC90YLQuNGE0Lg=?= =?UTF-8?B?0LrQsNGG0LjQuA==?= In-Reply-To: <86c0acdc8088429a02fbb65b56af59d5.NginxMailingListRussian@forum.nginx.org> References: <5625900.bPBRUi4u3v@note> <86c0acdc8088429a02fbb65b56af59d5.NginxMailingListRussian@forum.nginx.org> Message-ID: <20170404081033.GI15932@protva.ru> On Mon, Apr 03, 2017 at 11:35:30PM -0400, DemDA wrote: > А, кстати, волею плюшевого димки винда > попала в реестр российского ПО. Чаво? Ссылку, pls (хоть это здесь явный оффтоп). Я нашёл только такое упоминание винды в связи с реестром: https://www.pcweek.ru/business/blog/foss/9482.php -- Eugene Berdnikov From nginx-forum на forum.nginx.org Tue Apr 4 13:29:44 2017 From: nginx-forum на forum.nginx.org (A7exius) Date: Tue, 04 Apr 2017 09:29:44 -0400 Subject: =?UTF-8?Q?sub_filter_=D0=B8_ssl?= Message-ID: добрый день Подскажите с чем может быть связано - делаю sub_filter на сайте - без переменных и регекса, просто "значение1" на "значение2". сам sub_filter находится в секции server. Сайт работает по http на 80-м порту и все корректно меняется и видно в браузере. Ничего не меняя в конфиге сервера/сайта, добавляю в конфиг работу на https, после чего sub_filter перестает работать. Отключаю https - работает) Пытался ставить sub_filter в различных location, но результат такой же. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273388,273388#msg-273388 From vbart на nginx.com Tue Apr 4 13:38:32 2017 From: vbart на nginx.com (=?utf-8?B?0JLQsNC70LXQvdGC0LjQvSDQkdCw0YDRgtC10L3QtdCy?=) Date: Tue, 04 Apr 2017 16:38:32 +0300 Subject: =?UTF-8?Q?Re=3A_sub_filter_=D0=B8_ssl?= In-Reply-To: References: Message-ID: <1968280.sdzE7aGysd@vbart-workstation> On Tuesday 04 April 2017 09:29:44 A7exius wrote: > добрый день > Подскажите с чем может быть связано - делаю sub_filter на сайте - без > переменных и регекса, просто "значение1" на "значение2". > сам sub_filter находится в секции server. > Сайт работает по http на 80-м порту и все корректно меняется и видно в > браузере. > Ничего не меняя в конфиге сервера/сайта, добавляю в конфиг работу на https, > после чего sub_filter перестает работать. > Отключаю https - работает) > Пытался ставить sub_filter в различных location, но результат такой же. > У вас nginx видимо куда-то проксирует на некий бекенд? Клиенты могут использовать другие заголовки запроса по https, что может повлиять на ответы вашего бекенда, например он может начать сжимать. -- Валентин Бартенев From nginx-forum на forum.nginx.org Tue Apr 4 14:12:44 2017 From: nginx-forum на forum.nginx.org (A7exius) Date: Tue, 04 Apr 2017 10:12:44 -0400 Subject: =?UTF-8?Q?Re=3A_sub_filter_=D0=B8_ssl?= In-Reply-To: <1968280.sdzE7aGysd@vbart-workstation> References: <1968280.sdzE7aGysd@vbart-workstation> Message-ID: Да проксирует, так получилось что на этом сервер есть и php-fpm и apach. Пробовал и туда (fastcgi_pass) и туда (proxy_pass) с одинаковым результатом - пока нет https все работает. При proxy_pass ставил заголовок proxy_set_header Accept-Encoding ""; proxy_cache off; proxy_pass http://backend1; gzip off; Сам sub_filter выглядит так: sub_filter 'name="Login" tabindex="4" 'name="Login" tabindex="4" autocomplete="off" '; sub_filter_types "*"; sub_filter_once off; Все это работает только в случае когда сайт остается по http, а сайт по https делается отдельным конфигом и proxy_pass к сайту по http. Но это не должно так быть! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273389,273390#msg-273390 From vbart на nginx.com Tue Apr 4 14:28:00 2017 From: vbart на nginx.com (=?utf-8?B?0JLQsNC70LXQvdGC0LjQvSDQkdCw0YDRgtC10L3QtdCy?=) Date: Tue, 04 Apr 2017 17:28 +0300 Subject: =?UTF-8?Q?Re=3A_sub_filter_=D0=B8_ssl?= In-Reply-To: References: <1968280.sdzE7aGysd@vbart-workstation> Message-ID: <5631048.nsny8W1lhY@vbart-workstation> On Tuesday 04 April 2017 10:12:44 A7exius wrote: > Да проксирует, так получилось что на этом сервер есть и php-fpm и apach. > Пробовал и туда (fastcgi_pass) и туда (proxy_pass) с одинаковым результатом > - пока нет https все работает. > При proxy_pass ставил заголовок > proxy_set_header Accept-Encoding ""; > proxy_cache off; > proxy_pass http://backend1; > gzip off; > > Сам sub_filter выглядит так: > sub_filter 'name="Login" tabindex="4" 'name="Login" tabindex="4" > autocomplete="off" '; > sub_filter_types "*"; > sub_filter_once off; > > Все это работает только в случае когда сайт остается по http, а сайт по > https делается отдельным конфигом и proxy_pass к сайту по http. > Но это не должно так быть! > Вы уверены, что заменяемый фрагмент есть в ответе и совпадает с точностью до байта в случае работы по https? Каким образом вы включаете https? -- Валентин Бартенев From nginx-forum на forum.nginx.org Tue Apr 4 14:48:32 2017 From: nginx-forum на forum.nginx.org (A7exius) Date: Tue, 04 Apr 2017 10:48:32 -0400 Subject: =?UTF-8?Q?Re=3A_sub_filter_=D0=B8_ssl?= In-Reply-To: <5631048.nsny8W1lhY@vbart-workstation> References: <5631048.nsny8W1lhY@vbart-workstation> Message-ID: > Вы уверены, что заменяемый фрагмент есть в ответе и совпадает > с точностью до байта в случае работы по https? я их брал из браузера - из исходников страницы, побайтно не сравнивал, т.к. непонятно откуда разные байты будут? (сейчас попробую взять с https страницы - вдруг действительно байтик другой где-то) Но на вид две строки (по http и https) - абсолютно идентичны. > Каким образом вы включаете https? добавляют в конфиг (пути и значения тут стер): listen 443 ssl; ssl_stapling on; ssl_ecdh_curve secp384r1; ssl_prefer_server_ciphers on; ssl_protocols TLSv1.2 TLSv1.1 TLSv1; ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; ssl_session_cache shared:SSL:30m; ssl_session_timeout 15m; ssl_trusted_certificate bundle.crt; ssl_certificate cert.crt; ssl_certificate_key cert.key; ssl_dhparam dh.pem; add_header Strict-Transport-Security "max-age=150000; preload"; add_header Public-Key-Pins 'pin-sha256=""; pin-sha256=""; pin-sha256=""; max-age=150000 '; Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273389,273392#msg-273392 From mdounin на mdounin.ru Tue Apr 4 15:15:43 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 4 Apr 2017 18:15:43 +0300 Subject: nginx-1.11.13 Message-ID: <20170404151543.GJ13617@mdounin.ru> Изменения в nginx 1.11.13 04.04.2017 *) Добавление: параметр http_429 в директивах proxy_next_upstream, fastcgi_next_upstream, scgi_next_upstream и uwsgi_next_upstream. Спасибо Piotr Sikora. *) Исправление: в обработке ошибок выделения памяти. *) Исправление: при использовании директив sendfile и timer_resolution на Linux запросы могли зависать. *) Исправление: при использовании с подзапросами директив sendfile и aio_write запросы могли зависать. *) Исправление: в модуле ngx_http_v2_module. Спасибо Piotr Sikora. *) Исправление: при использовании HTTP/2 в рабочем процессе мог произойти segmentation fault. *) Исправление: запросы могли зависать при использовании с подзапросами директив limit_rate, sendfile_max_chunk, limit_req или метода $r->sleep() встроенного перла. *) Исправление: в модуле ngx_http_slice_module. -- Maxim Dounin http://nginx.org/ From gmm на csdoc.com Tue Apr 4 20:47:27 2017 From: gmm на csdoc.com (Gena Makhomed) Date: Tue, 4 Apr 2017 23:47:27 +0300 Subject: =?UTF-8?B?Q2VudE9TIDYgLSDQvdC1INGA0LDQsdC+0YLQsNC10YIgc2VydmljZSBuZ2lueCB1?= =?UTF-8?B?cGdyYWRl?= Message-ID: Здравствуйте! CentOS 6 64-bit, nginx из официального репозитория mainline. При обновлении nginx через yum update с версии 1.11.12 до 1.11.13 не сработала команда service nginx upgrade Вручную запускаю service nginx upgrade - тоже ничего не работает. Как выяснилось, причина в том, что service nginx status возвращает "nginx dead but pid file exists" и завершается с кодом ошибки 1. Но самое интересное в том, что nginx жив и нормально работает: # cat /var/run/nginx.pid 13212 # pstree -cp init(1)─┬─nginx(13212)─┬─nginx(13213) │ ├─nginx(13214) │ ├─nginx(13215) │ ├─nginx(13216) │ ├─nginx(13217) │ ├─nginx(13219) │ ├─nginx(13220) │ └─nginx(13221) # ps aux | grep nginx root 13212 0.0 0.0 50144 1376 ? Ss Mar30 0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf nginx 13213 0.5 0.3 61812 15056 ? S< Mar30 43:15 nginx: worker process nginx 13214 0.5 0.3 62028 15336 ? S< Mar30 42:12 nginx: worker process nginx 13215 0.5 0.3 61796 15040 ? S< Mar30 41:27 nginx: worker process nginx 13216 0.5 0.3 61776 15028 ? S< Mar30 41:44 nginx: worker process nginx 13217 0.5 0.3 61880 15088 ? S< Mar30 44:11 nginx: worker process nginx 13219 0.9 0.3 63048 16268 ? S< Mar30 75:42 nginx: worker process nginx 13220 0.6 0.3 62284 15504 ? S< Mar30 53:42 nginx: worker process nginx 13221 1.0 0.3 62848 16196 ? S< Mar30 86:39 nginx: worker process Нашел, причина глюка в том, что: # echo $(readlink /proc/13212/exe | sed -e 's/\s*(deleted)$//') (deleted)/usr/sbin/nginx это фрагмент из функции __pids_var_run() из /etc/init.d/functions sed ожидает что текст (deleted) будет после имени бинарника, но тут текст (deleted) оказывается перед именем бинарника и вся логика работы функции __pids_var_run() ломается. if [ -n "$binary" ] ; then local b=$(readlink /proc/$p/exe | sed -e 's/\s*(deleted)$//') [ "$b" != "$binary" ] && continue fi pid="$pid $p" (deleted)/usr/sbin/nginx не равно /usr/sbin/nginx и поэтому __pids_var_run() думает что процесса нет. Получается, что ошибка в файле /etc/rc.d/init.d/functions из базового пакета initscripts-9.03.53-1.el6.centos.2.x86_64 из состава CentOS 6 / RHEL6 ? Или же этот глюк специфичен только для OpenVZ версии ядра, и на нормальном ядре из состава CentOS 6 все нормально? -- Best regards, Gena From thresh на nginx.com Wed Apr 5 08:47:22 2017 From: thresh на nginx.com (Konstantin Pavlov) Date: Wed, 5 Apr 2017 11:47:22 +0300 Subject: =?UTF-8?B?UmU6IENlbnRPUyA2IC0g0L3QtSDRgNCw0LHQvtGC0LDQtdGCIHNlcnZpY2Ugbmdp?= =?UTF-8?B?bnggdXBncmFkZQ==?= In-Reply-To: References: Message-ID: <169bdfd3-76bf-f15e-9fa0-e0e07f0084b2@nginx.com> Здравствуйте, On 04/04/2017 23:47, Gena Makhomed wrote: > Здравствуйте! > > CentOS 6 64-bit, nginx из официального репозитория mainline. > При обновлении nginx через yum update с версии 1.11.12 до 1.11.13 > не сработала команда service nginx upgrade > Нашел, причина глюка в том, что: > > # echo $(readlink /proc/13212/exe | sed -e 's/\s*(deleted)$//') > (deleted)/usr/sbin/nginx > Получается, что ошибка в файле /etc/rc.d/init.d/functions > из базового пакета initscripts-9.03.53-1.el6.centos.2.x86_64 > из состава CentOS 6 / RHEL6 ? > > Или же этот глюк специфичен только для OpenVZ версии ядра, > и на нормальном ядре из состава CentOS 6 все нормально? Да, на обычном ядре из CentOS 6: [root на c6-test1 ~]# rpm -qf /bin/readlink coreutils-8.4-43.el6.x86_64 [root на c6-test1 ~]# /bin/readlink /proc/`cat /var/run/nginx.pid`/exe /usr/sbin/nginx (deleted) [root на c6-test1 ~]# uname -a Linux c6-test1 2.6.32-642.6.1.el6.x86_64 #1 SMP Wed Oct 5 00:36:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux На OpenVZ (Ubuntu 16.04 в контейнере, другого под рукой к сожалению нет): root на ovz-ub:~# dpkg -S /bin/readlink coreutils: /bin/readlink root на ovz-ub:~# dpkg -l coreutils| grep '^ii' ii coreutils 8.25-2ubuntu2 amd64 GNU core utilities root на ovz-ub:~# /bin/readlink /proc/`cat /var/run/nginx.pid`/exe (deleted)/usr/sbin/nginx root на ovz-ub:~# uname -a Linux ovz-ub 2.6.32-042stab120.11 #1 SMP Wed Nov 16 12:05:45 MSK 2016 x86_64 x86_64 x86_64 GNU/Linux Я думаю, что стоит повесить баг на openvz'шное ядро - совместимость с RHEL явно нарушена в этом месте. Другой вопрос, что исправлять они это может и не пожелают, чтобы не ломать уже существующих пользователей, завязанных на это изменение. -- Konstantin Pavlov From nginx-forum на forum.nginx.org Thu Apr 6 13:12:10 2017 From: nginx-forum на forum.nginx.org (lacostewin) Date: Thu, 06 Apr 2017 09:12:10 -0400 Subject: =?UTF-8?B?0KDQtdC00LjRgNC10LrRgg==?= Message-ID: Всем привет! Помогите написать редирект. Ситуация такова: 1. есть систма мониторинга cacti. Живёт она по умолчанию на http://domain.xx/cacti/ на апаче. 2. ситему перенесли на поддомен на http://cacti.domain.xx/cacti/, дописав в htacces слудующее: #RewriteCond %{HTTP_HOST} ^domain.xx [NC] #RewriteRule ^(.*)$ http://domain.xx$1 [L,R=301] #RedirectMatch 301 ^/cacti/(.*)$ http://cacti.domain.xx/$1 3. дальше поставили в качестве прокси NGINX с такой конфигой: server { listen cacti.domain.xx:80; server_name cacti.domain.xx www.cacti.domain.xx; access_log /var/log/nginx/access-cacti.log; location / { proxy_pass http://cacti.doamin.xx:8080/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_connect_timeout 120; proxy_send_timeout 120; proxy_read_timeout 180; } location ~* \.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js|swf)$ { root /usr/share/cacti/site; } В последствии перестали открываться все изображения и графики. Текст меню без стилей отображаются. Подскажите, как правильно переписать htaccess? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273450,273450#msg-273450 From sargaskn на gmail.com Sat Apr 8 23:29:26 2017 From: sargaskn на gmail.com (Sargas) Date: Sun, 9 Apr 2017 02:29:26 +0300 Subject: Kubernetes ingress Message-ID: Здравствуйте. Скажите, пожалуйста, а есть ли у вас какие-то планы по развитию https://github.com/nginxinc/kubernetes-ingress ? Для разработки начали использовать ваш, сейчас думаем что выбирать. Ваш или тот что делают в сообществе https://github.com/kubernetes/ingress ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From kisulja2000 на mail.ru Sun Apr 9 04:28:10 2017 From: kisulja2000 на mail.ru (kisulja200) Date: Sun, 9 Apr 2017 07:28:10 +0300 Subject: URL encoded 404 Message-ID: <2e9c52ea-fa40-1ef3-c469-fd7b9f3894de@mail.ru> Здравствуйте, nginx version: nginx/1.11.10 built by gcc 4.4.5 (Debian 4.4.5-8) built with OpenSSL 1.1.0e 16 Feb 2017 TLS SNI support enabled configure arguments: --with-cc-opt='-g -O2' --with-ld-opt= --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_gunzip_module --with-file-aio --with-threads --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_secure_link_module --with-http_sub_module --with-http_xslt_module --with-mail --with-mail_ssl_module --with-openssl=../openssl-1.1.0e --with-http_v2_module используется php-fpm через proxy_pass в логах периодически возникают 404 ошибки типа catalog%2fshow.php%3fid%3d1170986 как заставить Nginx декодировать такие строки перед передачей в proxy_pass? С уважением, Мелехов Сергей From nginx на mva.name Sun Apr 9 04:32:49 2017 From: nginx на mva.name (Vadim A. Misbakh-Soloviov) Date: Sun, 09 Apr 2017 11:32:49 +0700 Subject: URL encoded 404 In-Reply-To: <2e9c52ea-fa40-1ef3-c469-fd7b9f3894de@mail.ru> References: <2e9c52ea-fa40-1ef3-c469-fd7b9f3894de@mail.ru> Message-ID: <4773682.2tvPBFrXU2@note> > используется php-fpm через proxy_pass > <...> > заставить Nginx декодировать такие строки перед передачей в proxy_pass? Как бы помягче сформулировать... Я сначала хотел написать про создание себе препятствий и последующее героическое их преодолевание, но, для начала, давайте выясним причину, по которой вы настроили использование php-fpm через *proxy*, а не *fastcgi*? From kisulja2000 на mail.ru Sun Apr 9 04:37:01 2017 From: kisulja2000 на mail.ru (kisulja200) Date: Sun, 9 Apr 2017 07:37:01 +0300 Subject: URL encoded 404 In-Reply-To: <4773682.2tvPBFrXU2@note> References: <2e9c52ea-fa40-1ef3-c469-fd7b9f3894de@mail.ru> <4773682.2tvPBFrXU2@note> Message-ID: <3af61471-d5be-5230-5ec0-a3b25d731a50@mail.ru> ошибся. в настройках fastcgi_pass не выспался :( 09.04.2017 7:32, Vadim A. Misbakh-Soloviov пишет: >> используется php-fpm через proxy_pass >> <...> >> заставить Nginx декодировать такие строки перед передачей в proxy_pass? > Как бы помягче сформулировать... > > Я сначала хотел написать про создание себе препятствий и последующее > героическое их преодолевание, но, для начала, давайте выясним причину, по > которой вы настроили использование php-fpm через *proxy*, а не *fastcgi*? > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru From michael на nginx.com Mon Apr 10 13:04:28 2017 From: michael на nginx.com (Michael Pleshakov) Date: Mon, 10 Apr 2017 14:04:28 +0100 Subject: Kubernetes ingress In-Reply-To: References: Message-ID: Здравствуйте, Sargas Проект будет поддерживаться: будем улучшать текущие возможности и исправлять найденные дефекты. Новые возможности -- расширения Ingress через аннотации -- в основном, добавляются сообществом. Проект является открытым и мы с радостью принимаем пулл реквесты. --Михаил 2017-04-09 0:29 GMT+01:00 Sargas : > Здравствуйте. > > Скажите, пожалуйста, а есть ли у вас какие-то планы по развитию > https://github.com/nginxinc/kubernetes-ingress ? > > Для разработки начали использовать ваш, сейчас думаем что выбирать. Ваш > или тот что делают в сообществе https://github.com/kubernetes/ingress > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Tue Apr 11 13:02:55 2017 From: nginx-forum на forum.nginx.org (winmasta) Date: Tue, 11 Apr 2017 09:02:55 -0400 Subject: =?UTF-8?B?0JrQsNC6INC/0YDQsNCy0LjQu9GM0L3QviDQvdCw0YHRgtGA0L7QuNGC0Ywgbmdp?= =?UTF-8?B?bnggcHJveHlwYXNzPw==?= Message-ID: Всем добрый день.Имеется веб сервер в локальной сети был доступный снаружи, через проброс портов (pfsense) TCP 80, 443, 4055. При входе на веб-интерфейс и вводе логина и пароля открывался "веб телефон". Появилась необходимость на внешнем адресе иметь доступ до разных машин по dns именам на 80 и 443 порты. Для этого было решено использовать nginx как reverse proxy (может есть решения проще) с заделом на возможную будущую балансировку нагрузки по некоторым сайтам. Адрес nginx 192.168.1.2 Поменял проброс 80 и 443 порта на 192.168.1.2 В конфигурации nginx прописал (здесь только часть, касающаяся именно этого сервера, остальные настроены по аналогии) server { listen 443 ssl; server_name ДОМЕННОЕ.ИМЯ.СЕРВЕРА; ssl_certificate /etc/ssl/certs/fullchain.pem; ssl_certificate_key /etc/ssl/private/0000_key-certbot.pem; ssl_protocols TLSv1 TLSv1.1 TLSV1.2; access_log /var/log/nginx/proxy.log; location / { proxy_pass https://192.168.1.1:443; } } server { listen 80; server_name ДОМЕННОЕ.ИМЯ.СЕРВЕРА; access_log /var/log/nginx/oktell_proxy.log; location / { proxy_pass http://192.168.1.1; } } Теперь веб интерфейс сервера доступен снаружи по dns имени (а так же другие сервера), но после ввода логина и пароля происходит ошибка. Не пойму в чем проблема и вообще где она. Буду рад услышать любые комментарии и подсказки опытных людей по существующей настройке (возможно нужно изменить), а так же увидеть ссылки на статьи по настройке подобных конфигураций. Всем заранее спасибо. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273530,273530#msg-273530 From nginx на mva.name Tue Apr 11 16:24:46 2017 From: nginx на mva.name (Vadim A. Misbakh-Soloviov) Date: Tue, 11 Apr 2017 23:24:46 +0700 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: References: Message-ID: <2643803.ZHjIG0p7jm@note> > но после ввода логина и пароля происходит ошибка. Не пойму в чем > проблема и вообще где она К сожалению, у нас ещё меньше (чем у вас) шансов узнать "в чём проблема и вообще где она", так как мы не видим ни текста ошибки, ни логов. From nginx-forum на forum.nginx.org Wed Apr 12 02:08:09 2017 From: nginx-forum на forum.nginx.org (winmasta) Date: Tue, 11 Apr 2017 22:08:09 -0400 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: <2643803.ZHjIG0p7jm@note> References: <2643803.ZHjIG0p7jm@note> Message-ID: <89bd1c89b9c8eb2c10fd72ba2f88dffc.NginxMailingListRussian@forum.nginx.org> Там проприетарный веб сервер встроенный в ПО, поэтому оттуда логов просто нет. Вот лог прокси при загрузке страницы (до ввода пароля) 192.168.1.3 - - [12/Apr/2017:08:57:33 +0700] "GET /styles/main.css?1466500766376 HTTP/1.1" 304 0 "http://ДОМЕННОЕ.ИМЯ.СЕРВЕРА/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36" 192.168.1.3 - - [12/Apr/2017:08:57:33 +0700] "GET /scripts/scripts.js?1466500766376 HTTP/1.1" 304 0 "http://ДОМЕННОЕ.ИМЯ.СЕРВЕРА/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36" 192.168.1.3 - - [12/Apr/2017:08:57:35 +0700] "GET /bower_components/angular-i18n/angular-locale_ru.js HTTP/1.1" 304 0 "http://ДОМЕННОЕ.ИМЯ.СЕРВЕРА/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36" 192.168.1.3 - локальный адрес шлюза, шлюз смотрит в интернет а вот лог прокси после ввода пароля и попытки входа 192.168.1.3 - - [12/Apr/2017:08:57:35 +0700] "GET /img/logo_big.png HTTP/1.1" 304 0 "http://ДОМЕННОЕ.ИМЯ.СЕРВЕРА/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36" 192.168.1.3 - - [12/Apr/2017:08:57:35 +0700] "GET /img/icons/flags.png HTTP/1.1" 304 0 "http://ДОМЕННОЕ.ИМЯ.СЕРВЕРА/styles/main.css?1466500766376" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36" при этом стоит отметить, что при обращении на локальный адрес этого же сервера из локальной сети вход происходит без проблем, а так же, если пробросить 80 и 443 порт в шлюзе 192.168.1.3 напрямую на 192.168.1.1, то вход так же происходит без проблем, т.е. не работает только конфигурация, когда 80 и 443 проброшены на 192.168.1.2 (nginx) и там прописан конфиг из первого сообщения Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273530,273537#msg-273537 From nginx-forum на forum.nginx.org Wed Apr 12 09:27:33 2017 From: nginx-forum на forum.nginx.org (winmasta) Date: Wed, 12 Apr 2017 05:27:33 -0400 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: <89bd1c89b9c8eb2c10fd72ba2f88dffc.NginxMailingListRussian@forum.nginx.org> References: <2643803.ZHjIG0p7jm@note> <89bd1c89b9c8eb2c10fd72ba2f88dffc.NginxMailingListRussian@forum.nginx.org> Message-ID: <1514b3156ef6e5940467a97ab002c1f2.NginxMailingListRussian@forum.nginx.org> вот такая ошибка при входе VM197:37 WebSocket connection to 'ws://oktell.ooossa.ru/' failed: Error during WebSocket handshake: Unexpected response code: 200 Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273530,273543#msg-273543 From dmitriy на lyalyuev.info Wed Apr 12 09:51:05 2017 From: dmitriy на lyalyuev.info (Dmitriy Lyalyuev) Date: Wed, 12 Apr 2017 12:51:05 +0300 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: <1514b3156ef6e5940467a97ab002c1f2.NginxMailingListRussian@forum.nginx.org> References: <2643803.ZHjIG0p7jm@note> <89bd1c89b9c8eb2c10fd72ba2f88dffc.NginxMailingListRussian@forum.nginx.org> <1514b3156ef6e5940467a97ab002c1f2.NginxMailingListRussian@forum.nginx.org> Message-ID: <4898891491990665@web12j.yandex.ru> Попробуйте погуглить на "nginx websocket proxy_pass". Websocket - это не просто http запрос и его проксировать надо специальным образом. 12.04.2017, 12:27, "winmasta" : > вот такая ошибка при входе > > VM197:37 WebSocket connection to 'ws://oktell.ooossa.ru/' failed: Error > during WebSocket handshake: Unexpected response code: 200 > > Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273530,273543#msg-273543 > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru --  Best regards, Dmitriy Lyalyuev https://lyalyuev.info +38066322962 From medvedev.yp на gmail.com Wed Apr 12 09:59:16 2017 From: medvedev.yp на gmail.com (Yuriy Medvedev) Date: Wed, 12 Apr 2017 12:59:16 +0300 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: <4898891491990665@web12j.yandex.ru> References: <2643803.ZHjIG0p7jm@note> <89bd1c89b9c8eb2c10fd72ba2f88dffc.NginxMailingListRussian@forum.nginx.org> <1514b3156ef6e5940467a97ab002c1f2.NginxMailingListRussian@forum.nginx.org> <4898891491990665@web12j.yandex.ru> Message-ID: Hello, for example location / { proxy_pass http://wsbackend; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } 12 апр. 2017 г. 12:51 PM пользователь "Dmitriy Lyalyuev" < dmitriy на lyalyuev.info> написал: > Попробуйте погуглить на "nginx websocket proxy_pass". > Websocket - это не просто http запрос и его проксировать надо специальным > образом. > > 12.04.2017, 12:27, "winmasta" : > > вот такая ошибка при входе > > > > VM197:37 WebSocket connection to 'ws://oktell.ooossa.ru/' failed: Error > > during WebSocket handshake: Unexpected response code: 200 > > > > Posted at Nginx Forum: https://forum.nginx.org/read. > php?21,273530,273543#msg-273543 > > > > _______________________________________________ > > nginx-ru mailing list > > nginx-ru на nginx.org > > http://mailman.nginx.org/mailman/listinfo/nginx-ru > > -- > Best regards, > Dmitriy Lyalyuev > https://lyalyuev.info > +38066322962 > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Wed Apr 12 12:37:37 2017 From: nginx-forum на forum.nginx.org (winmasta) Date: Wed, 12 Apr 2017 08:37:37 -0400 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: References: Message-ID: Спасибо, в контекст location для нужного сервера добавил 2 директивы proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; и все заработало Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273530,273549#msg-273549 From chipitsine на gmail.com Wed Apr 12 13:22:33 2017 From: chipitsine на gmail.com (=?UTF-8?B?0JjQu9GM0Y8g0KjQuNC/0LjRhtC40L0=?=) Date: Wed, 12 Apr 2017 18:22:33 +0500 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: <1514b3156ef6e5940467a97ab002c1f2.NginxMailingListRussian@forum.nginx.org> References: <2643803.ZHjIG0p7jm@note> <89bd1c89b9c8eb2c10fd72ba2f88dffc.NginxMailingListRussian@forum.nginx.org> <1514b3156ef6e5940467a97ab002c1f2.NginxMailingListRussian@forum.nginx.org> Message-ID: не все браузеры поддерживают вебсокеты. по идее, то, что вебсокеты не поддерживаются, можно было бы уйти на long polling и не делать из этого трагедии. странное у вас приложение, намаетесь вы с ним еще 2017-04-12 14:27 GMT+05:00 winmasta : > вот такая ошибка при входе > > VM197:37 WebSocket connection to 'ws://oktell.ooossa.ru/' failed: Error > during WebSocket handshake: Unexpected response code: 200 > > Posted at Nginx Forum: https://forum.nginx.org/read. > php?21,273530,273543#msg-273543 > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Wed Apr 12 13:37:00 2017 From: nginx-forum на forum.nginx.org (winmasta) Date: Wed, 12 Apr 2017 09:37:00 -0400 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: References: Message-ID: Выбирать не приходится, работаем с тем, что дали. Была задача, и она решилась, всем большое спасибо за участие. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273530,273555#msg-273555 From mdounin на mdounin.ru Wed Apr 12 15:19:37 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Wed, 12 Apr 2017 18:19:37 +0300 Subject: nginx-1.12.0 Message-ID: <20170412151937.GX13617@mdounin.ru> Изменения в nginx 1.12.0 12.04.2017 *) Стабильная ветка 1.12.x. -- Maxim Dounin http://nginx.org/ From nginx на mva.name Wed Apr 12 16:38:05 2017 From: nginx на mva.name (Vadim A. Misbakh-Soloviov) Date: Wed, 12 Apr 2017 23:38:05 +0700 Subject: nginx-1.12.0 In-Reply-To: <20170412151937.GX13617@mdounin.ru> References: <20170412151937.GX13617@mdounin.ru> Message-ID: <2187551.Os0X3tdZB5@note> В письме от среда, 12 апреля 2017 г. 22:19:37 +07 пользователь Maxim Dounin написал: > Изменения в nginx 1.12.0 12.04.2017 > > *) Стабильная ветка 1.12.x. А когда ждать первый релиз 13? (а то в родмапе написано, что due: год, но это, я так понимаю, до завершения :) From maxim на nginx.com Wed Apr 12 17:17:01 2017 From: maxim на nginx.com (Maxim Konovalov) Date: Wed, 12 Apr 2017 20:17:01 +0300 Subject: nginx-1.12.0 In-Reply-To: <2187551.Os0X3tdZB5@note> References: <20170412151937.GX13617@mdounin.ru> <2187551.Os0X3tdZB5@note> Message-ID: <9557ed58-4694-756d-91a6-0089015ec65e@nginx.com> On 12/04/2017 19:38, Vadim A. Misbakh-Soloviov wrote: > В письме от среда, 12 апреля 2017 г. 22:19:37 +07 пользователь Maxim Dounin > написал: >> Изменения в nginx 1.12.0 12.04.2017 >> >> *) Стабильная ветка 1.12.x. > > А когда ждать первый релиз 13? (а то в родмапе написано, что due: год, но это, > я так понимаю, до завершения :) Дату пока не обсуждали. После майских, скорее всего. С праздником! -- Maxim Konovalov From nginx-forum на forum.nginx.org Thu Apr 13 05:49:53 2017 From: nginx-forum на forum.nginx.org (trace) Date: Thu, 13 Apr 2017 01:49:53 -0400 Subject: =?UTF-8?B?0J/QtdGA0LXQvdCw0L/RgNCw0LLQu9C10L3QuNC1INC30LDQv9GA0L7RgdCwINCy?= =?UTF-8?B?INC30LDQstC40YHQuNC80L7RgdGC0Lgg0L7RgiDQvtGC0LLQtdGC0LAg0LE=?= =?UTF-8?B?0LXQutC10L3QtNCw?= Message-ID: <97ab56150012486e455552b381f10814.NginxMailingListRussian@forum.nginx.org> Всем привет. Подскажите пожалуйста, можно ли реализовать следующие варианты. 1) Приходит запрос example.ru/aaa , если бекенд ответил 404 статус, тогда отправляем запрос на другой бекенд. 2) Приходит запрос example.ru/bbb, если бекенд ответил 404 статус, тогда подменяем uri на example.ru/zzz и отправляем на другой бекенд. Всё это без дополнительно взаимодействия с клиентом, т.е. со стороны клиента должно выглядить как запрос - ответ. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273587,273587#msg-273587 From nginx-forum на forum.nginx.org Thu Apr 13 05:55:07 2017 From: nginx-forum на forum.nginx.org (trace) Date: Thu, 13 Apr 2017 01:55:07 -0400 Subject: =?UTF-8?B?UmU6INCf0LXRgNC10L3QsNC/0YDQsNCy0LvQtdC90LjQtSDQt9Cw0L/RgNC+0YE=?= =?UTF-8?B?0LAg0LIg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvtGCINC+0YLQstC10YI=?= =?UTF-8?B?0LAg0LHQtdC60LXQvdC00LA=?= In-Reply-To: <97ab56150012486e455552b381f10814.NginxMailingListRussian@forum.nginx.org> References: <97ab56150012486e455552b381f10814.NginxMailingListRussian@forum.nginx.org> Message-ID: <48cc5eb2f935dc369564dba2fa5e37c2.NginxMailingListRussian@forum.nginx.org> По первому пункту можно вот так proxy_next_upstream http_404; Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273587,273588#msg-273588 From nginx-forum на forum.nginx.org Thu Apr 13 06:58:00 2017 From: nginx-forum на forum.nginx.org (trace) Date: Thu, 13 Apr 2017 02:58:00 -0400 Subject: =?UTF-8?B?UmU6INCf0LXRgNC10L3QsNC/0YDQsNCy0LvQtdC90LjQtSDQt9Cw0L/RgNC+0YE=?= =?UTF-8?B?0LAg0LIg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvtGCINC+0YLQstC10YI=?= =?UTF-8?B?0LAg0LHQtdC60LXQvdC00LA=?= In-Reply-To: <48cc5eb2f935dc369564dba2fa5e37c2.NginxMailingListRussian@forum.nginx.org> References: <97ab56150012486e455552b381f10814.NginxMailingListRussian@forum.nginx.org> <48cc5eb2f935dc369564dba2fa5e37c2.NginxMailingListRussian@forum.nginx.org> Message-ID: <416698a06a127edabdef4f403813a623.NginxMailingListRussian@forum.nginx.org> По второму пункту не нашел идей, просьба помочь. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273587,273589#msg-273589 From iippolitov на nginx.com Thu Apr 13 08:50:37 2017 From: iippolitov на nginx.com (Igor A. Ippolitov) Date: Thu, 13 Apr 2017 11:50:37 +0300 Subject: =?UTF-8?B?UmU6INCf0LXRgNC10L3QsNC/0YDQsNCy0LvQtdC90LjQtSDQt9Cw0L/RgNC+0YE=?= =?UTF-8?B?0LAg0LIg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvtGCINC+0YLQstC10YI=?= =?UTF-8?B?0LAg0LHQtdC60LXQvdC00LA=?= In-Reply-To: <416698a06a127edabdef4f403813a623.NginxMailingListRussian@forum.nginx.org> References: <97ab56150012486e455552b381f10814.NginxMailingListRussian@forum.nginx.org> <48cc5eb2f935dc369564dba2fa5e37c2.NginxMailingListRussian@forum.nginx.org> <416698a06a127edabdef4f403813a623.NginxMailingListRussian@forum.nginx.org> Message-ID: <7ffc6525-eb51-6520-e663-9434fcd981b7@nginx.com> Если вы уточните, что клиенты будут только GET'ить второй location, то можно использовать proxy_intercept_errors и error_page. А вот если вы собрались, например, POST'ить по таким же условиям, то задача приобретает вид костыля. On 13.04.2017 09:58, trace wrote: > По второму пункту не нашел идей, просьба помочь. > > Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273587,273589#msg-273589 > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru From iippolitov на nginx.com Thu Apr 13 09:03:54 2017 From: iippolitov на nginx.com (Igor A. Ippolitov) Date: Thu, 13 Apr 2017 12:03:54 +0300 Subject: =?UTF-8?B?UmU6INCf0LXRgNC10L3QsNC/0YDQsNCy0LvQtdC90LjQtSDQt9Cw0L/RgNC+0YE=?= =?UTF-8?B?0LAg0LIg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvtGCINC+0YLQstC10YI=?= =?UTF-8?B?0LAg0LHQtdC60LXQvdC00LA=?= In-Reply-To: <7ffc6525-eb51-6520-e663-9434fcd981b7@nginx.com> References: <97ab56150012486e455552b381f10814.NginxMailingListRussian@forum.nginx.org> <48cc5eb2f935dc369564dba2fa5e37c2.NginxMailingListRussian@forum.nginx.org> <416698a06a127edabdef4f403813a623.NginxMailingListRussian@forum.nginx.org> <7ffc6525-eb51-6520-e663-9434fcd981b7@nginx.com> Message-ID: <22255ec4-0edc-f73b-33fa-473ebe9b1ab5@nginx.com> http://nginx.org/ru/docs/http/ngx_http_core_module.html#error_page Не дочитал документацию: если перенаправлять в именованный location, то и метод сохранится. А адрес можно будет поменять с помощь rewrite ... break; On 13.04.2017 11:50, Igor A. Ippolitov wrote: > Если вы уточните, что клиенты будут только GET'ить второй location, > то можно использовать proxy_intercept_errors и error_page. > > А вот если вы собрались, например, POST'ить по таким же условиям, > то задача приобретает вид костыля. > > On 13.04.2017 09:58, trace wrote: >> По второму пункту не нашел идей, просьба помочь. >> >> Posted at Nginx Forum: >> https://forum.nginx.org/read.php?21,273587,273589#msg-273589 >> >> _______________________________________________ >> 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 From yokodzun на yokodzun.kiev.ua Thu Apr 13 17:01:19 2017 From: yokodzun на yokodzun.kiev.ua (Yuriy B. Borysov) Date: Thu, 13 Apr 2017 20:01:19 +0300 Subject: proxy_pass and java app Message-ID: <20170413170119.GB88074@itsinternet.net> Здравствуйте! Есть вендорское приложение на java, работающее на порту 8080. Хочется запустить его через nginx в режиме revers-proxy. Однако обычный конфиг вида: server { listen 80; server_name sub.domain.tld; location / { proxy_pass http://127.0.0.1:8080/; } } не работает. Отображается просто пустая страница. Пробовал вариант с proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; результат аналогичный. Приложение и nginx работают на одном хосте. Вариант проксировать не через лупбек, а через внешний IP - не дал результата. Если идти прямо на 8080 - всё работает. В error.log пусто, в access.log ничего криминального: X.X.X.X - - [13/Apr/2017:17:02:08 +0300] "GET /assets/vendor-2769b289065a07545ef8ba5b5b781da3.css HTTP/1.1" 304 0 "http://sub.domain.tld/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/601.7.8 (KHTML, like Gecko) Version/9.1.3 Safari/537.86.7" Система: Ubuntu 16.04 LTS Версия nginx: # nginx -V nginx version: nginx/1.10.0 (Ubuntu) built with OpenSSL 1.0.2g 1 Mar 2016 TLS SNI support enabled В какую сторону смотреть? Спасибо! -- WBR, Yuriy B. Borysov YOKO-UANIC | YOKO-RIPE From skobolo на gmail.com Thu Apr 13 17:12:12 2017 From: skobolo на gmail.com (Seva Kobylin) Date: Thu, 13 Apr 2017 20:12:12 +0300 Subject: proxy_pass and java app In-Reply-To: <20170413170119.GB88074@itsinternet.net> References: <20170413170119.GB88074@itsinternet.net> Message-ID: <28CB3D2C-4BD9-41FE-A454-31BD2D8F68BE@gmail.com> Рекомендую начать со сравнения tcpdump -s0 -A при хождении на 8080 и на 80. > 13 апр. 2017 г., в 20:01, Yuriy B. Borysov написал(а): > > Здравствуйте! > > Есть вендорское приложение на java, работающее на порту 8080. > > Хочется запустить его через nginx в режиме revers-proxy. > > Однако обычный конфиг вида: > > server { > listen 80; > server_name sub.domain.tld; > > > location / { > proxy_pass http://127.0.0.1:8080/; > } > } > > > не работает. Отображается просто пустая страница. > > Пробовал вариант с > > proxy_http_version 1.1; > proxy_set_header Upgrade $http_upgrade; > proxy_set_header Connection "upgrade"; > > результат аналогичный. > > Приложение и nginx работают на одном хосте. > > Вариант проксировать не через лупбек, а через внешний IP - не дал результата. > Если идти прямо на 8080 - всё работает. > > > > В error.log пусто, в access.log ничего криминального: > > X.X.X.X - - [13/Apr/2017:17:02:08 +0300] "GET /assets/vendor-2769b289065a07545ef8ba5b5b781da3.css HTTP/1.1" 304 0 "http://sub.domain.tld/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/601.7.8 (KHTML, like Gecko) Version/9.1.3 Safari/537.86.7" > > Система: > > Ubuntu 16.04 LTS > > Версия nginx: > > # nginx -V > nginx version: nginx/1.10.0 (Ubuntu) > built with OpenSSL 1.0.2g 1 Mar 2016 > TLS SNI support enabled > > > В какую сторону смотреть? > > Спасибо! > > > -- > WBR, Yuriy B. Borysov > YOKO-UANIC | YOKO-RIPE > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru From alex.hha на gmail.com Thu Apr 13 17:33:48 2017 From: alex.hha на gmail.com (Alex Domoradov) Date: Thu, 13 Apr 2017 20:33:48 +0300 Subject: proxy_pass and java app In-Reply-To: <28CB3D2C-4BD9-41FE-A454-31BD2D8F68BE@gmail.com> References: <20170413170119.GB88074@itsinternet.net> <28CB3D2C-4BD9-41FE-A454-31BD2D8F68BE@gmail.com> Message-ID: Возможно Java приложение требует определенные хедеры? Я бы попробовал proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Port $server_port; 2017-04-13 20:12 GMT+03:00 Seva Kobylin : > Рекомендую начать со сравнения tcpdump -s0 -A при хождении на 8080 и на 80. > > > 13 апр. 2017 г., в 20:01, Yuriy B. Borysov > написал(а): > > > > Здравствуйте! > > > > Есть вендорское приложение на java, работающее на порту 8080. > > > > Хочется запустить его через nginx в режиме revers-proxy. > > > > Однако обычный конфиг вида: > > > > server { > > listen 80; > > server_name sub.domain.tld; > > > > > > location / { > > proxy_pass http://127.0.0.1:8080/; > > } > > } > > > > > > не работает. Отображается просто пустая страница. > > > > Пробовал вариант с > > > > proxy_http_version 1.1; > > proxy_set_header Upgrade $http_upgrade; > > proxy_set_header Connection "upgrade"; > > > > результат аналогичный. > > > > Приложение и nginx работают на одном хосте. > > > > Вариант проксировать не через лупбек, а через внешний IP - не дал > результата. > > Если идти прямо на 8080 - всё работает. > > > > > > > > В error.log пусто, в access.log ничего криминального: > > > > X.X.X.X - - [13/Apr/2017:17:02:08 +0300] "GET /assets/vendor- > 2769b289065a07545ef8ba5b5b781da3.css HTTP/1.1" 304 0 " > http://sub.domain.tld/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) > AppleWebKit/601.7.8 (KHTML, like Gecko) Version/9.1.3 Safari/537.86.7" > > > > Система: > > > > Ubuntu 16.04 LTS > > > > Версия nginx: > > > > # nginx -V > > nginx version: nginx/1.10.0 (Ubuntu) > > built with OpenSSL 1.0.2g 1 Mar 2016 > > TLS SNI support enabled > > > > > > В какую сторону смотреть? > > > > Спасибо! > > > > > > -- > > WBR, Yuriy B. Borysov > > YOKO-UANIC | YOKO-RIPE > > _______________________________________________ > > 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 > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Thu Apr 13 17:39:14 2017 From: nginx-forum на forum.nginx.org (VVL) Date: Thu, 13 Apr 2017 13:39:14 -0400 Subject: =?UTF-8?B?c3NsIHN0YXBsaW5nIGZpbGUg0L/RgNC4INC90LXRgdC60L7Qu9GM0LrQuNGFINGB?= =?UTF-8?B?0LXRgNGC0LjRhNC40LrQsNGC0LDRhQ==?= Message-ID: <916d875389e3531876d1f76093c5252d.NginxMailingListRussian@forum.nginx.org> Добрый день! Собственно сабж. nginx с недавних пор поддерживает несколько сертификатов для одного хоста, например в случае rsa и эллиптического шифрования. Однако в документации отсутствует упоминание о нескольких ssl_stapling_file :) Опытным путем также не получилось добиться успеха. Возможно ли настроить локальный stapling при вышеупомянутой конфигурации? Заранее спасибо! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273614,273614#msg-273614 From nginx-forum на forum.nginx.org Thu Apr 13 17:40:17 2017 From: nginx-forum на forum.nginx.org (vitcool) Date: Thu, 13 Apr 2017 13:40:17 -0400 Subject: proxy_pass and java app In-Reply-To: <20170413170119.GB88074@itsinternet.net> References: <20170413170119.GB88074@itsinternet.net> Message-ID: <624472bab31209965d62a9141ade1728.NginxMailingListRussian@forum.nginx.org> Речь про какой то конкретный сервлет контейнер или AS? или у приложения своя реализация протокола HTTP? Энивей, я бы проверил доходит ли до этого java бекенда заголовок HOST. например у Caucho Resin была такая неприятная тема... Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273607,273615#msg-273615 From dm1998 на list.ru Thu Apr 13 17:47:56 2017 From: dm1998 на list.ru (=?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JzRg9GA0LfQuNC9?=) Date: Thu, 13 Apr 2017 20:47:56 +0300 Subject: =?UTF-8?B?cmV3cml0ZSDQsiDQuNC80LXQvdC+0LLQsNC90L3Ri9C5IGxvY2F0aW9u?= Message-ID: <1492105676.700191912@f273.i.mail.ru> Добрый день! Почитал сообщения здесь и здесь . Там предлагали ввести синтаксис "rewrite ^ @name;", а то "error_page 418 =@name; return 418;" некрасиво и длинно, а "try_file ... @named" делает ненужный системный вызов. Насколько я понял, по итогам тех обсуждений так ничего и не решили. Можете, пожалуйста, объяснить мне, почему этот синтаксис не ввели, вроде бы он должен быть очень удобным. Спасибо. -- С уважением, Дмитрий Мурзин ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From mdounin на mdounin.ru Thu Apr 13 17:52:27 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Thu, 13 Apr 2017 20:52:27 +0300 Subject: =?UTF-8?B?UmU6IHNzbCBzdGFwbGluZyBmaWxlINC/0YDQuCDQvdC10YHQutC+0LvRjNC60Lg=?= =?UTF-8?B?0YUg0YHQtdGA0YLQuNGE0LjQutCw0YLQsNGF?= In-Reply-To: <916d875389e3531876d1f76093c5252d.NginxMailingListRussian@forum.nginx.org> References: <916d875389e3531876d1f76093c5252d.NginxMailingListRussian@forum.nginx.org> Message-ID: <20170413175227.GP13617@mdounin.ru> Hello! On Thu, Apr 13, 2017 at 01:39:14PM -0400, VVL wrote: > Добрый день! Собственно сабж. > nginx с недавних пор поддерживает несколько сертификатов для одного хоста, > например в случае rsa и эллиптического шифрования. > Однако в документации отсутствует упоминание о нескольких ssl_stapling_file > :) Опытным путем также не получилось добиться успеха. > Возможно ли настроить локальный stapling при вышеупомянутой конфигурации? Директива ssl_stapling_file может быть только одна, и задаёт файл, который будет использоваться для всех соединений в данном сервере, так что при использовании нескольких сертификатов результата, очевидно, не будет. Проще всего - использовать для получения OCSP-ответов для stapling'а сам nginx, он это умеет. Если очень хочется именно локально - можно попробовать поднять локально OCSP-responder в рамках того же nginx'а, и в зависимости от запроса возвращать разные OCSP-ответы. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Thu Apr 13 18:12:17 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Thu, 13 Apr 2017 21:12:17 +0300 Subject: =?UTF-8?B?UmU6IHJld3JpdGUg0LIg0LjQvNC10L3QvtCy0LDQvdC90YvQuSBsb2NhdGlvbg==?= In-Reply-To: <1492105676.700191912@f273.i.mail.ru> References: <1492105676.700191912@f273.i.mail.ru> Message-ID: <20170413181217.GQ13617@mdounin.ru> Hello! On Thu, Apr 13, 2017 at 08:47:56PM +0300, Дмитрий Мурзин wrote: > Добрый день! > Почитал сообщения здесь и здесь . Just for the record, в HTML-версии письма тут были ссылки: http://mailman.nginx.org/pipermail/nginx-ru/2009-July/026623.html http://mailman.nginx.org/pipermail/nginx-ru/2011-October/043587.html > Там предлагали ввести синтаксис "rewrite ^ @name;", > а то "error_page 418 =@name; return 418;" некрасиво и длинно, > а "try_file ... @named" делает ненужный системный вызов. > Насколько я понял, по итогам тех обсуждений так ничего и не решили. > > Можете, пожалуйста, объяснить мне, почему этот синтаксис не ввели, > вроде бы он должен быть очень удобным. > Спасибо. Игорь против, он достаточно подробно и однозначно ответил тут: http://mailman.nginx.org/pipermail/nginx-ru/2011-October/043596.html Цитата: : Лично я против goto, потому что это приведёт к тому, что люди ради : экономии пары строк будут его использовать там, где нужно сделать : законченную конфигурацию внутри location'а. Это а) приводит : к неподдерживаемым конфигурациям, b) такие конфигурации будут : присылаться в список и мне придётся им разбирать. Не хочу. Я, в целом, с ним согласен в том смысле, что так писать конфигурации - плохо. Но при этом считаю, что переходы в именованные location'ы должны работать везде, где работают обычные перенаправления, и любые отклонения от этой логики - только усложняют ситуацию. Возможно, стоит в очередной раз насесть на Игоря, и попробовать переубедить. -- Maxim Dounin http://nginx.org/ From yokodzun на yokodzun.kiev.ua Thu Apr 13 18:14:12 2017 From: yokodzun на yokodzun.kiev.ua (Yuriy B. Borysov) Date: Thu, 13 Apr 2017 21:14:12 +0300 Subject: proxy_pass and java app In-Reply-To: <624472bab31209965d62a9141ade1728.NginxMailingListRussian@forum.nginx.org> References: <20170413170119.GB88074@itsinternet.net> <624472bab31209965d62a9141ade1728.NginxMailingListRussian@forum.nginx.org> Message-ID: <20170413181412.GE88074@itsinternet.net> Hi! On Thu, Apr 13, 2017 at 01:40:17PM -0400, vitcool writes: > Речь про какой то конкретный сервлет контейнер или AS? или у приложения своя > реализация протокола HTTP? Трудно сказать определённо, я в java не силён. Это софт управления сетевым железом, который поставляется с ним же и идёт "as is". Разархивировал в папочку, запустил идущий в комплекте стрёмный start.sh в результате получил: /opt/java7/bin/java -Djavax.net.ssl.trustStore=./jssecacerts -Dhttps.protocols=TLSv1.1,TLSv1.2 -jar lib/vendor-app-server-1.2.3.jar server config.yml Торчащий наружу на 8080 порту. > Энивей, я бы проверил доходит ли до этого java бекенда заголовок HOST. > например у Caucho Resin была такая неприятная тема... Чем проще всего отснифить обмен между nginx и java? tshark? Спасибо! -- WBR, Yuriy B. Borysov YOKO-UANIC | YOKO-RIPE From yokodzun на yokodzun.kiev.ua Thu Apr 13 18:16:05 2017 From: yokodzun на yokodzun.kiev.ua (Yuriy B. Borysov) Date: Thu, 13 Apr 2017 21:16:05 +0300 Subject: proxy_pass and java app In-Reply-To: References: <20170413170119.GB88074@itsinternet.net> <28CB3D2C-4BD9-41FE-A454-31BD2D8F68BE@gmail.com> Message-ID: <20170413181605.GF88074@itsinternet.net> Hi! On Thu, Apr 13, 2017 at 08:33:48PM +0300, Alex Domoradov writes: > Возможно Java приложение требует определенные хедеры? Я бы попробовал > proxy_set_header Host $host; > proxy_set_header X-Real-IP $remote_addr; > proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; > proxy_set_header X-Forwarded-Proto $scheme; > proxy_set_header X-Forwarded-Host $host; > proxy_set_header X-Forwarded-Port $server_port; Не сработало, к сожалению. -- WBR, Yuriy B. Borysov YOKO-UANIC | YOKO-RIPE From dm1998 на list.ru Thu Apr 13 18:22:05 2017 From: dm1998 на list.ru (=?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JzRg9GA0LfQuNC9?=) Date: Thu, 13 Apr 2017 21:22:05 +0300 Subject: =?UTF-8?B?UmVbMl06IHJld3JpdGUg0LIg0LjQvNC10L3QvtCy0LDQvdC90YvQuSBsb2NhdGlv?= =?UTF-8?B?bg==?= In-Reply-To: <20170413181217.GQ13617@mdounin.ru> References: <1492105676.700191912@f273.i.mail.ru> <20170413181217.GQ13617@mdounin.ru> Message-ID: <1492107725.946782981@f434.i.mail.ru> Спасибо за ответ! Да, я читал это сообщение, но не очень его понял. Можете, пожалуйста, пояснить, что значит > Лично я против goto, потому что это приведёт к тому, что люди ради > экономии пары строк будут его использовать там, где нужно сделать > законченную конфигурацию внутри location'а. Например, если у меня есть следующий конфиг: location @proxy {     ...много строк настройки прокси... } location /png {     error_page 418 =@proxy; return 418; } location /pic {     error_page 418 =@proxy; return 418; } Можете, пожалуйста, пояснить, как в этом случае "сделать законченную конфигурацию внутри location'а". Спасибо. >Четверг, 13 апреля 2017, 21:12 +03:00 от Maxim Dounin : > >Hello! > >On Thu, Apr 13, 2017 at 08:47:56PM +0300, Дмитрий Мурзин wrote: > >> Добрый день! >> Почитал сообщения здесь и здесь . > >Just for the record, в HTML-версии письма тут были ссылки: > >http://mailman.nginx.org/pipermail/nginx-ru/2009-July/026623.html >http://mailman.nginx.org/pipermail/nginx-ru/2011-October/043587.html > >> Там предлагали ввести синтаксис "rewrite ^ @name;", >> а то "error_page 418 =@name; return 418;" некрасиво и длинно, >> а "try_file ... @named" делает ненужный системный вызов. >> Насколько я понял, по итогам тех обсуждений так ничего и не решили. >> >> Можете, пожалуйста, объяснить мне, почему этот синтаксис не ввели, >> вроде бы он должен быть очень удобным. >> Спасибо. > >Игорь против, он достаточно подробно и однозначно ответил тут: > >http://mailman.nginx.org/pipermail/nginx-ru/2011-October/043596.html > >Цитата: > >: Лично я против goto, потому что это приведёт к тому, что люди ради >: экономии пары строк будут его использовать там, где нужно сделать >: законченную конфигурацию внутри location'а. Это а) приводит >: к неподдерживаемым конфигурациям, b) такие конфигурации будут >: присылаться в список и мне придётся им разбирать. Не хочу. > >Я, в целом, с ним согласен в том смысле, что так писать >конфигурации - плохо. Но при этом считаю, что переходы в >именованные location'ы должны работать везде, где работают обычные >перенаправления, и любые отклонения от этой логики - только >усложняют ситуацию. > >Возможно, стоит в очередной раз насесть на Игоря, и попробовать >переубедить. > >-- >Maxim Dounin >http://nginx.org/ >_______________________________________________ >nginx-ru mailing list >nginx-ru на nginx.org >http://mailman.nginx.org/mailman/listinfo/nginx-ru -- С уважением, Дмитрий Мурзин ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Thu Apr 13 18:53:25 2017 From: nginx-forum на forum.nginx.org (vitcool) Date: Thu, 13 Apr 2017 14:53:25 -0400 Subject: proxy_pass and java app In-Reply-To: <20170413181412.GE88074@itsinternet.net> References: <20170413181412.GE88074@itsinternet.net> Message-ID: скорей всего что то свое встроенное, может быть на основе Jetty надо вскрывать vendor-app-server-1.2.3.jar и смотреть исходники еще вариант, посмотреть заголовки которые выдает этот сервер в респонсе (если напрямую стучаться по 8080 порту), может быть там будет что то на тему некорректности запроса через прокси. потихоньку урезать кол-во заголовков в запросе и ловить момент когда он перестанет отвечать корректно. curl наверное поможет > Чем проще всего отснифить обмен между nginx и java? tshark? тут не подскажу, я на 95% занимаюсь чистым java backend, у меня ситуации проще, так как сам решаю что принимать что выдавать. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273607,273622#msg-273622 From nginx-forum на forum.nginx.org Thu Apr 13 18:58:26 2017 From: nginx-forum на forum.nginx.org (vitcool) Date: Thu, 13 Apr 2017 14:58:26 -0400 Subject: proxy_pass and java app In-Reply-To: <20170413181412.GE88074@itsinternet.net> References: <20170413181412.GE88074@itsinternet.net> Message-ID: <09a88571cc42237f8c89b66328f23c1b.NginxMailingListRussian@forum.nginx.org> PS: еще 2 момента 1. proxy_pass http://127.0.0.1:8080/; закрывающий слеш уберите, попробуйте 2. добавьте proxy_http_version 1.1; proxy_redirect off; Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273607,273623#msg-273623 From mdounin на mdounin.ru Thu Apr 13 19:00:59 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Thu, 13 Apr 2017 22:00:59 +0300 Subject: =?UTF-8?B?UmU6IHJld3JpdGUg0LIg0LjQvNC10L3QvtCy0LDQvdC90YvQuSBsb2NhdGlvbg==?= In-Reply-To: <1492107725.946782981@f434.i.mail.ru> References: <1492105676.700191912@f273.i.mail.ru> <20170413181217.GQ13617@mdounin.ru> <1492107725.946782981@f434.i.mail.ru> Message-ID: <20170413190059.GS13617@mdounin.ru> Hello! On Thu, Apr 13, 2017 at 09:22:05PM +0300, Дмитрий Мурзин wrote: > Спасибо за ответ! > Да, я читал это сообщение, но не очень его понял. > Можете, пожалуйста, пояснить, что значит > > > Лично я против goto, потому что это приведёт к тому, что люди ради > > экономии пары строк будут его использовать там, где нужно сделать > > законченную конфигурацию внутри location'а. > > > Например, если у меня есть следующий конфиг: > location @proxy { >     ...много строк настройки прокси... > } > > location /png { >     error_page 418 =@proxy; return 418; > } > location /pic { >     error_page 418 =@proxy; return 418; > } > > Можете, пожалуйста, пояснить, > как в этом случае "сделать законченную конфигурацию внутри location'а". > Спасибо. Я бы рекомендовал так: ... много строк настройки ... location /png { proxy_pass ... } location /pic { proxy_pass ... } Настройки в nginx'е наследуются, и если они одинаковые - именно этим и стоит пользоваться как основным инструментом сокращения размеров конфига. Если же настройки разные, то в любом случае надо делать разные настройки: location /png { proxy_pass ... ... много строк настройки для проксирования /png ... } location /pic { proxy_pass ... ... много строк настройки для проксирования /pic ... } Основной проблемой конфигурации с переходами, как в вашем случае, является невозможность при редактировании конфигурации за конечное время понять, на какие запросы и как повлияют вносимые изменения. Это становится актуально на больших конфигурациях, когда в рамках одного сервера могут быть сотни различных location'ов. Вот тут есть доклад Игоря на соответствующую тему на nginx.conf 2014: Scaleable nginx configuration https://youtu.be/YWRYbLKsS0I Русские варианты того же доклада: http://highload.guide/blog/scalable-configuration-nginx.html https://youtu.be/fcG-7k20oG8 -- Maxim Dounin http://nginx.org/ From swood на fotofor.biz Thu Apr 13 19:19:58 2017 From: swood на fotofor.biz (Anton Kiryushkin) Date: Thu, 13 Apr 2017 22:19:58 +0300 Subject: =?UTF-8?B?0JrQsNC6IG5naW54INGH0LjRgtCw0LXRgiDQutC+0L3RhNC40LM=?= Message-ID: Здравствуйте. Расскажите, пожалуйста, в чем принципиальная разница в том, как nginx читает много upstream (например 4 тысячи) и тем, как nginx читает много location (например, тоже 4 тысячи). По ощущениям, второе он читает много дольше и тяжелее. И возможно ли в будущем, делать список подгружаемых location общим для двух разных серверов (имеется ввиду server_name). Например, если эти два сервера выполняют разную работу с одними и теми же location. -- Best regards, Anton Kiryushkin -------------- next part -------------- An HTML attachment was scrubbed... URL: From dmitry.goryainov на gmail.com Thu Apr 13 20:04:30 2017 From: dmitry.goryainov на gmail.com (Dmitry) Date: Thu, 13 Apr 2017 23:04:30 +0300 Subject: =?UTF-8?B?UmU6INCa0LDQuiBuZ2lueCDRh9C40YLQsNC10YIg0LrQvtC90YTQuNCz?= In-Reply-To: References: Message-ID: Если локейшены заданы выражениями, то это увеличивает время. Второй вопрос не совсем понятен, если набор локейшен одинаков, почему нельзя их вынести в файл и инклюдить в обе секции сервер? 13 апр. 2017 г. 22:20 пользователь "Anton Kiryushkin" написал: > Здравствуйте. > > Расскажите, пожалуйста, в чем принципиальная разница в том, как nginx > читает много upstream (например 4 тысячи) и тем, как nginx читает много > location (например, тоже 4 тысячи). > > По ощущениям, второе он читает много дольше и тяжелее. > > И возможно ли в будущем, делать список подгружаемых location общим для > двух разных серверов (имеется ввиду server_name). Например, если эти два > сервера выполняют разную работу с одними и теми же location. > > -- > Best regards, > Anton Kiryushkin > > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rogat1y на gmail.com Thu Apr 13 22:48:13 2017 From: rogat1y на gmail.com (Maxim Kozlov) Date: Fri, 14 Apr 2017 01:48:13 +0300 Subject: proxy_pass and java app In-Reply-To: <09a88571cc42237f8c89b66328f23c1b.NginxMailingListRussian@forum.nginx.org> References: <20170413181412.GE88074@itsinternet.net> <09a88571cc42237f8c89b66328f23c1b.NginxMailingListRussian@forum.nginx.org> Message-ID: >> не работает. Отображается просто пустая страница. сложно определеить по таким симптомам смотрите, все ли ресурсы подгружаются, дёргайте курлом и сравнивайте хидеры ну или да, посмотреть трафик - самое простое имхо tcpflow -i lo -c а там точно только http? вёбсокетов нет? ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From alex.hha на gmail.com Fri Apr 14 06:56:59 2017 From: alex.hha на gmail.com (Alex Domoradov) Date: Fri, 14 Apr 2017 09:56:59 +0300 Subject: proxy_pass and java app In-Reply-To: References: <20170413181412.GE88074@itsinternet.net> <09a88571cc42237f8c89b66328f23c1b.NginxMailingListRussian@forum.nginx.org> Message-ID: А зачем гадать, не пойму? Надо просто открыть в хроме консоль и посмотреть на вкладке Network что там происходит 2017-04-14 1:48 GMT+03:00 Maxim Kozlov : > >> не работает. Отображается просто пустая страница. > сложно определеить по таким симптомам > > смотрите, все ли ресурсы подгружаются, дёргайте курлом и сравнивайте хидеры > ну или да, посмотреть трафик - самое простое имхо > tcpflow -i lo -c > > а там точно только http? вёбсокетов нет? > > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Fri Apr 14 13:05:17 2017 From: nginx-forum на forum.nginx.org (sv_91) Date: Fri, 14 Apr 2017 09:05:17 -0400 Subject: =?UTF-8?B?0LzQtdC00LvQtdC90L3Ri9C5IGtlZXAtYWxpdmUg0L3QsCBnZW5lcmljINGP0LQ=?= =?UTF-8?B?0YDQtQ==?= Message-ID: Есть 2 версии клиента к серверу nginx https://gist.github.com/magisterRab/6b7132e0b9e88baa4b7e0e69a2ff0aab Эти 2 версии отличаются наличием или отсутствием строки 120 (writeRequest(fd);) в приведенном выше файле При этом, программа с отсутствующей строкой работает с rps в среднем в 2 раза меньше, чем вторая версия. По моим наблюдениям, это происходит из-за того, что nginx как бы "запоминает" время от момента коннекта до первого пришедшего к нему запроса, и использует это время в дальнейшем при генерации остальных ответов в keep-alive соединении. Проблема повторяется только на ядре generic, на других типах ядер проблемы нет Пример ядра, на котором это повторяется: 4.4.0-31-generic С чем это может быть связано? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273648,273648#msg-273648 From dm1998 на list.ru Fri Apr 14 16:10:08 2017 From: dm1998 на list.ru (=?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JzRg9GA0LfQuNC9?=) Date: Fri, 14 Apr 2017 19:10:08 +0300 Subject: =?UTF-8?B?UmVbMl06IHJld3JpdGUg0LIg0LjQvNC10L3QvtCy0LDQvdC90YvQuSBsb2NhdGlv?= =?UTF-8?B?bg==?= In-Reply-To: <20170413190059.GS13617@mdounin.ru> References: <1492105676.700191912@f273.i.mail.ru> <1492107725.946782981@f434.i.mail.ru> <20170413190059.GS13617@mdounin.ru> Message-ID: <1492186208.705421348@f176.i.mail.ru> Спасибо за ответ! Хороший доклад, многое проясняет. Если можно, спрошу про ещё одну конфигурацию: location @proxy1 {     ...много строк настройки первого прокси... } location /png {     error_page 418 =@proxy1; return 418; } location /pic {     error_page 418 =@proxy1; return 418; } location @proxy2 {     ...много других строк настройки второго прокси... } location /some_location {     error_page 418 =@proxy2; return 418; } location /some_another_location {     error_page 418 =@proxy2; return 418; } Правда же, что если директивы настроек @proxy1 и @proxy2 разные,  то не получится как в предыдущей конфигурации вынести на верхний уровень общую, (то есть придётся использовать некрасивый хак с error_page, либо copypaste, как советуют в докладе)? Спасибо. >Четверг, 13 апреля 2017, 22:01 +03:00 от Maxim Dounin : > >Hello! > >On Thu, Apr 13, 2017 at 09:22:05PM +0300, Дмитрий Мурзин wrote: > >> Спасибо за ответ! >> Да, я читал это сообщение, но не очень его понял. >> Можете, пожалуйста, пояснить, что значит >> >> > Лично я против goto, потому что это приведёт к тому, что люди ради >> > экономии пары строк будут его использовать там, где нужно сделать >> > законченную конфигурацию внутри location'а. >> >> >> Например, если у меня есть следующий конфиг:  >> location @proxy { >>     ...много строк настройки прокси... >> } >> >> location /png { >>     error_page 418 =@proxy; return 418; >> } >> location /pic { >>     error_page 418 =@proxy; return 418; >> } >> >> Можете, пожалуйста, пояснить, >> как в этом случае "сделать законченную конфигурацию внутри location'а". >> Спасибо. > >Я бы рекомендовал так: > >   ... много строк настройки ... > >   location /png { >       proxy_pass ... >   } > >   location /pic { >       proxy_pass ... >   } > >Настройки в nginx'е наследуются, и если они одинаковые - именно >этим и стоит пользоваться как основным инструментом сокращения >размеров конфига. > >Если же настройки разные, то в любом случае надо делать разные >настройки: > >   location /png { >       proxy_pass ... >       ... много строк настройки для проксирования /png ... >   } > >   location /pic { >       proxy_pass ... >       ... много строк настройки для проксирования /pic ... >   } > >Основной проблемой конфигурации с переходами, как в вашем случае, >является невозможность при редактировании конфигурации за конечное >время понять, на какие запросы и как повлияют вносимые изменения. >Это становится актуально на больших конфигурациях, когда в рамках >одного сервера могут быть сотни различных location'ов. > >Вот тут есть доклад Игоря на соответствующую тему на nginx.conf >2014: > >Scaleable nginx configuration >https://youtu.be/YWRYbLKsS0I > >Русские варианты того же доклада: > >http://highload.guide/blog/scalable-configuration-nginx.html >https://youtu.be/fcG-7k20oG8 > >-- >Maxim Dounin >http://nginx.org/ >_______________________________________________ >nginx-ru mailing list >nginx-ru на nginx.org >http://mailman.nginx.org/mailman/listinfo/nginx-ru -- С уважением, Дмитрий Мурзин ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From mdounin на mdounin.ru Fri Apr 14 17:09:00 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Fri, 14 Apr 2017 20:09:00 +0300 Subject: =?UTF-8?B?UmU6IHJld3JpdGUg0LIg0LjQvNC10L3QvtCy0LDQvdC90YvQuSBsb2NhdGlvbg==?= In-Reply-To: <1492186208.705421348@f176.i.mail.ru> References: <1492105676.700191912@f273.i.mail.ru> <1492107725.946782981@f434.i.mail.ru> <20170413190059.GS13617@mdounin.ru> <1492186208.705421348@f176.i.mail.ru> Message-ID: <20170414170900.GA13617@mdounin.ru> Hello! On Fri, Apr 14, 2017 at 07:10:08PM +0300, Дмитрий Мурзин wrote: > Спасибо за ответ! > Хороший доклад, многое проясняет. > > Если можно, спрошу про ещё одну конфигурацию: > location @proxy1 { >     ...много строк настройки первого прокси... > } > location /png { >     error_page 418 =@proxy1; return 418; > } > location /pic { >     error_page 418 =@proxy1; return 418; > } > > location @proxy2 { >     ...много других строк настройки второго прокси... > } > location /some_location { >     error_page 418 =@proxy2; return 418; > } > location /some_another_location { >     error_page 418 =@proxy2; return 418; > } > > Правда же, что если директивы настроек @proxy1 и @proxy2 разные,  > то не получится как в предыдущей конфигурации вынести на верхний уровень общую, > (то есть придётся использовать некрасивый хак с error_page, > либо copypaste, как советуют в докладе)? Конкретно в приведённой конфигурации - можно воспользоваться тем, что требующие разных конфигураций location'ы имеют общие префиксы, и сделать конфигурацию с вложенными location'ами: location /p { ... first proxy settings ... location /png { proxy_pass ... } location /pic { proxy_pass ... } } location /some_ { ... second proxy settings ... location /some_location { proxy_pass ... } location /some_another_location { proxy_pass ... } } В общем случае так, очевидно, сделать не получится. Наиболее общее решение - копировать конфигурацию. В случае, если копировать очень не хочется - можно воспользоваться директивой include. -- Maxim Dounin http://nginx.org/ From dm1998 на list.ru Fri Apr 14 17:22:18 2017 From: dm1998 на list.ru (=?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JzRg9GA0LfQuNC9?=) Date: Fri, 14 Apr 2017 20:22:18 +0300 Subject: =?UTF-8?B?UmVbMl06IHJld3JpdGUg0LIg0LjQvNC10L3QvtCy0LDQvdC90YvQuSBsb2NhdGlv?= =?UTF-8?B?bg==?= In-Reply-To: <20170414170900.GA13617@mdounin.ru> References: <1492105676.700191912@f273.i.mail.ru> <1492186208.705421348@f176.i.mail.ru> <20170414170900.GA13617@mdounin.ru> Message-ID: <1492190538.762020026@f399.i.mail.ru> Спасибо за ответ! Да, буду использовать include. >Пятница, 14 апреля 2017, 20:09 +03:00 от Maxim Dounin : > >Hello! > >On Fri, Apr 14, 2017 at 07:10:08PM +0300, Дмитрий Мурзин wrote: > >> Спасибо за ответ! >> Хороший доклад, многое проясняет. >> >> Если можно, спрошу про ещё одну конфигурацию: >> location @proxy1 { >>     ...много строк настройки первого прокси... >> } >> location /png { >>     error_page 418 =@proxy1; return 418; >> } >> location /pic { >>     error_page 418 =@proxy1; return 418; >> } >> >> location @proxy2 { >>     ...много других строк настройки второго прокси... >> } >> location /some_location { >>     error_page 418 =@proxy2; return 418; >> } >> location /some_another_location { >>     error_page 418 =@proxy2; return 418; >> } >> >> Правда же, что если директивы настроек @proxy1 и @proxy2 разные,  >> то не получится как в предыдущей конфигурации вынести на верхний уровень общую, >> (то есть придётся использовать некрасивый хак с error_page, >> либо copypaste, как советуют в докладе)? > >Конкретно в приведённой конфигурации - можно воспользоваться тем, >что требующие разных конфигураций location'ы имеют общие префиксы, >и сделать конфигурацию с вложенными location'ами: > >    location /p { >        ... first proxy settings ... > >        location /png { >            proxy_pass ... >        } > >        location /pic { >            proxy_pass ... >        } >    } > >    location /some_ { >        ... second proxy settings ... > >        location /some_location { >            proxy_pass ... >        } > >        location /some_another_location { >            proxy_pass ... >        } >    } > >В общем случае так, очевидно, сделать не получится. Наиболее >общее решение - копировать конфигурацию. В случае, если >копировать очень не хочется - можно воспользоваться директивой >include. > >-- >Maxim Dounin >http://nginx.org/ >_______________________________________________ >nginx-ru mailing list >nginx-ru на nginx.org >http://mailman.nginx.org/mailman/listinfo/nginx-ru -- С уважением, Дмитрий Мурзин ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Sat Apr 15 13:18:57 2017 From: nginx-forum на forum.nginx.org (AndreyZP) Date: Sat, 15 Apr 2017 09:18:57 -0400 Subject: =?UTF-8?B?UHJveHkgcGFzcyDQuNC30LzQtdC90LjRgtGMINC+0YLQstC10YI=?= Message-ID: Здравствуйте. Подскажите, есть ли возможность nginx использовать как прокси и изменять ответ. Поясню подробнее. На сервер пришёл запрос. При помощи proxy_pass получили ответ с другого web-сервера. Дальше, я хочу изменить этот ответ. Изменение может быть более сложное, чем по регулярному выражению. Идеально — дальше запрос переправить на мой fastcgi-скрипт, в который придут все параметры запроса (GET например), и ответ, который дал вышестоящий сервер (html код). Далее, мой fastcgi скрипт (например, php через php-fpm, но не обязательно) обрабатывает эти данные и на выходе формирует новый изменённый html, который возвращает клиенту. Так же, если вышестоящий сервер по какой-то причине не работает, чтобы запрос тоже пришёл на мой fastcgi-скрипт с пометкой «ответа от вышестоящего сервера нет, надо сформировать собственный ответ». Возможно ли такое сделать средствами nginx? Как-то для одного запроса последовательно исполнить директивы: proxy_pass потом fastcgi_pass чтобы на fastcgi помимо стандартных параметров, ещё и передался ответ от proxy_pass ? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273662,273662#msg-273662 From nginx на mva.name Sun Apr 16 03:19:34 2017 From: nginx на mva.name (Vadim A. Misbakh-Soloviov) Date: Sun, 16 Apr 2017 10:19:34 +0700 Subject: =?UTF-8?B?UmU6IFByb3h5IHBhc3Mg0LjQt9C80LXQvdC40YLRjCDQvtGC0LLQtdGC?= In-Reply-To: References: Message-ID: <14255065.DbrVPkZsLp@note> nginx-lua-http(или stream)-module (сторонний) nginx-njs-module (от авторов nginx, не встроенный) nginx-perl-module (встроенный) Выбирайте. Впрочем, про возможность сходить (встроенными функциями) по паре локейшнов, обработать результат и отдать что-то своё я точно знаю в первом из перечисленных. Остальные, как-то, не ковырял. Но, думаю, тоже должно быть можно. From nginx на mva.name Sun Apr 16 03:26:19 2017 From: nginx на mva.name (Vadim A. Misbakh-Soloviov) Date: Sun, 16 Apr 2017 10:26:19 +0700 Subject: =?UTF-8?B?UmU6IHJld3JpdGUg0LIg0LjQvNC10L3QvtCy0LDQvdC90YvQuSBsb2NhdGlvbg==?= In-Reply-To: <1492190538.762020026@f399.i.mail.ru> References: <1492105676.700191912@f273.i.mail.ru> <20170414170900.GA13617@mdounin.ru> <1492190538.762020026@f399.i.mail.ru> Message-ID: <3963469.HvbrYAZpHC@note> > Да, буду использовать include. А ещё в рассылке (вроде бы, в том числе и Игорь) при всяких разных просьбах с добавлением поддержки всякой магии для много-инклудных конфигураций часто рекомендуют использовать вместо этого самописный генератор конвига nginx, который всю магию сделает сам, а уже потом запишет готовую статическую конфигурацию в файл :) From iippolitov на nginx.com Sun Apr 16 12:34:13 2017 From: iippolitov на nginx.com (Igor A. Ippolitov) Date: Sun, 16 Apr 2017 15:34:13 +0300 Subject: =?UTF-8?B?UmU6IFByb3h5IHBhc3Mg0LjQt9C80LXQvdC40YLRjCDQvtGC0LLQtdGC?= In-Reply-To: References: Message-ID: <5f3393a4-f770-f5ce-757b-cd0f3a71c9b7@nginx.com> Не проще ли сразу передавать запросы в CGI? Выглядеть схема будет так: client -> nginx -> cgi -> nginx -> upstream В этом случае, в cgi нет какой-то сверх логики кроме изменений ответов, а выбором апстримов и работой с клиентами занимает nginx. В схеме выше оба nginx вполне могут быть двумя server{} блоками одной конфигурации. On 15.04.2017 16:18, AndreyZP wrote: > Здравствуйте. > > Подскажите, есть ли возможность nginx использовать как прокси и изменять > ответ. > > Поясню подробнее. > На сервер пришёл запрос. При помощи proxy_pass получили ответ с другого > web-сервера. > Дальше, я хочу изменить этот ответ. Изменение может быть более сложное, чем > по регулярному выражению. > > Идеально — дальше запрос переправить на мой fastcgi-скрипт, в который придут > все параметры запроса (GET например), и ответ, который дал вышестоящий > сервер (html код). > > Далее, мой fastcgi скрипт (например, php через php-fpm, но не обязательно) > обрабатывает эти данные и на выходе формирует новый изменённый html, который > возвращает клиенту. > > Так же, если вышестоящий сервер по какой-то причине не работает, чтобы > запрос тоже пришёл на мой fastcgi-скрипт с пометкой «ответа от вышестоящего > сервера нет, надо сформировать собственный ответ». > > Возможно ли такое сделать средствами nginx? > > Как-то для одного запроса последовательно исполнить директивы: > proxy_pass > потом > fastcgi_pass > чтобы на fastcgi помимо стандартных параметров, ещё и передался ответ от > proxy_pass ? > > Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273662,273662#msg-273662 > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru From nginx-forum на forum.nginx.org Mon Apr 17 07:48:00 2017 From: nginx-forum на forum.nginx.org (VVL) Date: Mon, 17 Apr 2017 03:48:00 -0400 Subject: =?UTF-8?B?UmU6IHNzbCBzdGFwbGluZyBmaWxlINC/0YDQuCDQvdC10YHQutC+0LvRjNC60Lg=?= =?UTF-8?B?0YUg0YHQtdGA0YLQuNGE0LjQutCw0YLQsNGF?= In-Reply-To: <20170413175227.GP13617@mdounin.ru> References: <20170413175227.GP13617@mdounin.ru> Message-ID: <537629035c1a1366129f4f81e4e8d281.NginxMailingListRussian@forum.nginx.org> "будет использоваться для всех соединений в данном сервере" Виртуальном сервере? В моей конфигурации для каждого виртуального хоста свой stapling файл, при тестах сервер отвечает на все запросы. "использовать для получения OCSP-ответов для stapling'а сам nginx, он это умеет" Умеет, но к сожалению, ocsp-сервер не всегда отвечает. Именно поэтому кэширую локально (скрипт не успокоится, пока не получит ответ и не обновит файл). Или nginx тоже кэширует ответы? В каком случае они сбрасываются? "можно попробовать поднять локально OCSP-responder" Задача к счастью намного (надеюсь) проще - получить минимальный и гарантированный ответ при OCSP запросе. Спасибо! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273617,273670#msg-273670 From xdr.box на gmail.com Mon Apr 17 11:37:25 2017 From: xdr.box на gmail.com (Alexander Simakov) Date: Mon, 17 Apr 2017 14:37:25 +0300 Subject: =?UTF-8?B?0JzQvtC20L3QviDQu9C4INC30LDRgdC60YDQuNC/0YLQvtCy0LDRgtGMINC90LU=?= =?UTF-8?B?0YHQu9C+0LbQvdGD0Y4g0LvQvtCz0LjQutGDINC/0YDRj9C80L4g0LIg0Lo=?= =?UTF-8?B?0L7QvdGE0LjQs9C1Pw==?= Message-ID: Добрый день! Подскажите, пожалуйста, как наиболее оптимальным способом решить следующую задачу: NGINX используется качестве прокси для входящих из интернета HTTPS и WebSocket-соединений. Запросы приходят на домены вида NNNN.example.com, где NNNN - некое число. Для каждого NNNN по очень простому алгоритму вычисляется внутренний IP-адрес на который нужно пробросить данное соединение. Вот пример конфигурации: ==8<== server { listen 443; server_name NNNN.example.com; location / { proxy_pass http://IP_ADDR_FOR_NNNN/; } location /ws/ { proxy_pass http://IP_ADDR_FOR_NNNN/ws/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } ==8<== Сейчас я вынужден программно генерировать большие статические файлы-портянки в которых порядка 1000 таких секций. Подскажите, можно ли в данном примере как-то заскриптовать логику получения IP-адреса по NNNN и иметь один компактный и универсальный файл? Или, может, как-то предвычислить для NGINX хеш { NNNN -> IP_ADDR_FOR_NNNN } и использовать его в конфиге? Спасибо. С уважением, Александр Симаков ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From me на kemko.ru Mon Apr 17 12:48:30 2017 From: me на kemko.ru (=?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JDQvdC00YDQtdC10LI=?=) Date: Mon, 17 Apr 2017 12:48:30 +0000 Subject: =?UTF-8?B?UmU6INCc0L7QttC90L4g0LvQuCDQt9Cw0YHQutGA0LjQv9GC0L7QstCw0YLRjCA=?= =?UTF-8?B?0L3QtdGB0LvQvtC20L3Rg9GOINC70L7Qs9C40LrRgyDQv9GA0Y/QvNC+INCy?= =?UTF-8?B?INC60L7QvdGE0LjQs9C1Pw==?= In-Reply-To: References: Message-ID: http://nginx.org/ru/docs/http/ngx_http_upstream_module.html#hash - не подходит? пн, 17 апр. 2017 г. в 14:37, Alexander Simakov : > Добрый день! > > Подскажите, пожалуйста, как наиболее оптимальным > способом решить следующую задачу: > > NGINX используется качестве прокси для входящих > из интернета HTTPS и WebSocket-соединений. > > Запросы приходят на домены вида NNNN.example.com, > где NNNN - некое число. Для каждого NNNN по очень > простому алгоритму вычисляется внутренний IP-адрес > на который нужно пробросить данное соединение. > > Вот пример конфигурации: > > ==8<== > server { > listen 443; > server_name NNNN.example.com; > > location / { > proxy_pass http://IP_ADDR_FOR_NNNN/; > } > > location /ws/ { > proxy_pass http://IP_ADDR_FOR_NNNN/ws/; > proxy_http_version 1.1; > proxy_set_header Upgrade $http_upgrade; > proxy_set_header Connection "upgrade"; > } > } > ==8<== > > Сейчас я вынужден программно генерировать большие > статические файлы-портянки в которых порядка 1000 > таких секций. > > Подскажите, можно ли в данном примере как-то заскриптовать > логику получения IP-адреса по NNNN и иметь один компактный > и универсальный файл? Или, может, как-то предвычислить для > NGINX хеш { NNNN -> IP_ADDR_FOR_NNNN } и использовать его > в конфиге? > > Спасибо. > > С уважением, > Александр Симаков > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From mdounin на mdounin.ru Mon Apr 17 12:49:10 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Mon, 17 Apr 2017 15:49:10 +0300 Subject: =?UTF-8?B?UmU6IHNzbCBzdGFwbGluZyBmaWxlINC/0YDQuCDQvdC10YHQutC+0LvRjNC60Lg=?= =?UTF-8?B?0YUg0YHQtdGA0YLQuNGE0LjQutCw0YLQsNGF?= In-Reply-To: <537629035c1a1366129f4f81e4e8d281.NginxMailingListRussian@forum.nginx.org> References: <20170413175227.GP13617@mdounin.ru> <537629035c1a1366129f4f81e4e8d281.NginxMailingListRussian@forum.nginx.org> Message-ID: <20170417124910.GD13617@mdounin.ru> Hello! On Mon, Apr 17, 2017 at 03:48:00AM -0400, VVL wrote: > "будет использоваться для всех соединений в данном сервере" > Виртуальном сервере? В моей конфигурации для каждого виртуального хоста свой > stapling файл, при тестах сервер отвечает на все запросы. Речь про блок конфигурации server{}. > "использовать для получения OCSP-ответов для stapling'а сам nginx, он это > умеет" > Умеет, но к сожалению, ocsp-сервер не всегда отвечает. Именно поэтому > кэширую локально (скрипт не успокоится, пока не получит ответ и не обновит > файл). Или nginx тоже кэширует ответы? В каком случае они сбрасываются? Ответы кешируются в рамках рабочего процесса, и возвращаются клиентам вплоть до получения нового OCSP-ответа или истечения указанного в ответе срока годности. Соответственно, наиболее неприятный момент - это перезагрузка конфигурации в тот момент, когда OCSP-сервер не отвечает. Но вообще, если OCSP-сервер не всегда отвечает - это повод сменить CA. > "можно попробовать поднять локально OCSP-responder" > Задача к счастью намного (надеюсь) проще - получить минимальный и > гарантированный ответ при OCSP запросе. Что уж может быть проще, чем поднять proxy с кешированием. Впрочем, смотри выше про "сменить CA". Отмечу также в скобках, что OCSP stapling - это механизм оптимизации, позволяющий снять работу (точнее, часть работы) по получению OCSP-ответов с клиентов и переложить её на сервер. Странно ожидать от этого механизма гарантированности чего либо. -- Maxim Dounin http://nginx.org/ From nginx-forum на forum.nginx.org Mon Apr 17 13:10:42 2017 From: nginx-forum на forum.nginx.org (AndreyZP) Date: Mon, 17 Apr 2017 09:10:42 -0400 Subject: =?UTF-8?B?UmU6IFByb3h5IHBhc3Mg0LjQt9C80LXQvdC40YLRjCDQvtGC0LLQtdGC?= In-Reply-To: References: Message-ID: По совету выше я использовал вариант с Lua Пришлось день потратить, чтоб разобраться в Lua, накодил в конфиге nginx-а, в итоге получилась именно такая схема как я хотел. Сначала запрос на вышестоящий сервер, потом на мой fastcgi. Сам ответ от сервера на fastcgi в итоге передал через memcached. Спасибо. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273662,273682#msg-273682 From chipitsine на gmail.com Mon Apr 17 13:16:51 2017 From: chipitsine на gmail.com (=?UTF-8?B?0JjQu9GM0Y8g0KjQuNC/0LjRhtC40L0=?=) Date: Mon, 17 Apr 2017 18:16:51 +0500 Subject: =?UTF-8?B?UmU6IHNzbCBzdGFwbGluZyBmaWxlINC/0YDQuCDQvdC10YHQutC+0LvRjNC60Lg=?= =?UTF-8?B?0YUg0YHQtdGA0YLQuNGE0LjQutCw0YLQsNGF?= In-Reply-To: <20170417124910.GD13617@mdounin.ru> References: <20170413175227.GP13617@mdounin.ru> <537629035c1a1366129f4f81e4e8d281.NginxMailingListRussian@forum.nginx.org> <20170417124910.GD13617@mdounin.ru> Message-ID: 17 апреля 2017 г., 17:49 пользователь Maxim Dounin написал: > Hello! > > On Mon, Apr 17, 2017 at 03:48:00AM -0400, VVL wrote: > > > "будет использоваться для всех соединений в данном сервере" > > Виртуальном сервере? В моей конфигурации для каждого виртуального хоста > свой > > stapling файл, при тестах сервер отвечает на все запросы. > > Речь про блок конфигурации server{}. > > > "использовать для получения OCSP-ответов для stapling'а сам nginx, он это > > умеет" > > Умеет, но к сожалению, ocsp-сервер не всегда отвечает. Именно поэтому > > кэширую локально (скрипт не успокоится, пока не получит ответ и не > обновит > > файл). Или nginx тоже кэширует ответы? В каком случае они сбрасываются? > > Ответы кешируются в рамках рабочего процесса, и возвращаются > клиентам вплоть до получения нового OCSP-ответа или истечения > указанного в ответе срока годности. Соответственно, наиболее > неприятный момент - это перезагрузка конфигурации в тот момент, > когда OCSP-сервер не отвечает. > > Но вообще, если OCSP-сервер не всегда отвечает - это повод сменить > CA. > > > "можно попробовать поднять локально OCSP-responder" > > Задача к счастью намного (надеюсь) проще - получить минимальный и > > гарантированный ответ при OCSP запросе. > > Что уж может быть проще, чем поднять proxy с кешированием. > Впрочем, смотри выше про "сменить CA". > > Отмечу также в скобках, что OCSP stapling - это механизм > оптимизации, позволяющий снять работу (точнее, часть работы) по > получению OCSP-ответов с клиентов и переложить её на сервер. > Странно ожидать от этого механизма гарантированности чего либо. > после массового выпуска сертификатов на Let's Encrypt произошло вот такое https://community.letsencrypt.org/t/ocsp-server-returns-unauthorized-status/21965/4 и, собственно, "You may be interested to read these gists about the ways in which OCSP stapling is implemented suboptimally in Apache and Nginx: https://gist.github.com/AGWA/1de6c26be5396f7cbce7ee016302d68424 and https://gist.github.com/sleevi/5efe9ef98961ecfb4da8" > -- > Maxim Dounin > http://nginx.org/ > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From xdr.box на gmail.com Mon Apr 17 13:18:46 2017 From: xdr.box на gmail.com (Alexander Simakov) Date: Mon, 17 Apr 2017 16:18:46 +0300 Subject: =?UTF-8?B?UmU6INCc0L7QttC90L4g0LvQuCDQt9Cw0YHQutGA0LjQv9GC0L7QstCw0YLRjCA=?= =?UTF-8?B?0L3QtdGB0LvQvtC20L3Rg9GOINC70L7Qs9C40LrRgyDQv9GA0Y/QvNC+INCy?= =?UTF-8?B?INC60L7QvdGE0LjQs9C1Pw==?= In-Reply-To: References: Message-ID: Думаю что нет. Мне ведь не нужно балансировать нагрузку между несколькими бэкэндами. Требуется все запросы на определённый домен всегда перенаправлять на заданный IP. Таких пар "домен -> IP" может быть несколько десятков тысяч, при том, что нужный IP-адрес вычисляется по домену одной строчкой кода. Вот и возник вопрос: можно ли обойтись без длинного и однообразного конфига. С уважением, Александр Симаков 17 апреля 2017 г., 15:48 пользователь Дмитрий Андреев написал: > http://nginx.org/ru/docs/http/ngx_http_upstream_module.html#hash - не > подходит? > > пн, 17 апр. 2017 г. в 14:37, Alexander Simakov : > >> Добрый день! >> >> Подскажите, пожалуйста, как наиболее оптимальным >> способом решить следующую задачу: >> >> NGINX используется качестве прокси для входящих >> из интернета HTTPS и WebSocket-соединений. >> >> Запросы приходят на домены вида NNNN.example.com, >> где NNNN - некое число. Для каждого NNNN по очень >> простому алгоритму вычисляется внутренний IP-адрес >> на который нужно пробросить данное соединение. >> >> Вот пример конфигурации: >> >> ==8<== >> server { >> listen 443; >> server_name NNNN.example.com; >> >> location / { >> proxy_pass http://IP_ADDR_FOR_NNNN/; >> } >> >> location /ws/ { >> proxy_pass http://IP_ADDR_FOR_NNNN/ws/; >> proxy_http_version 1.1; >> proxy_set_header Upgrade $http_upgrade; >> proxy_set_header Connection "upgrade"; >> } >> } >> ==8<== >> >> Сейчас я вынужден программно генерировать большие >> статические файлы-портянки в которых порядка 1000 >> таких секций. >> >> Подскажите, можно ли в данном примере как-то заскриптовать >> логику получения IP-адреса по NNNN и иметь один компактный >> и универсальный файл? Или, может, как-то предвычислить для >> NGINX хеш { NNNN -> IP_ADDR_FOR_NNNN } и использовать его >> в конфиге? >> >> Спасибо. >> >> С уважением, >> Александр Симаков >> _______________________________________________ >> 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 > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From mdounin на mdounin.ru Mon Apr 17 13:52:52 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Mon, 17 Apr 2017 16:52:52 +0300 Subject: =?UTF-8?B?UmU6IHNzbCBzdGFwbGluZyBmaWxlINC/0YDQuCDQvdC10YHQutC+0LvRjNC60Lg=?= =?UTF-8?B?0YUg0YHQtdGA0YLQuNGE0LjQutCw0YLQsNGF?= In-Reply-To: References: <20170413175227.GP13617@mdounin.ru> <537629035c1a1366129f4f81e4e8d281.NginxMailingListRussian@forum.nginx.org> <20170417124910.GD13617@mdounin.ru> Message-ID: <20170417135252.GH13617@mdounin.ru> Hello! On Mon, Apr 17, 2017 at 06:16:51PM +0500, Илья Шипицин wrote: > 17 апреля 2017 г., 17:49 пользователь Maxim Dounin > написал: > > > Hello! > > > > On Mon, Apr 17, 2017 at 03:48:00AM -0400, VVL wrote: > > > > > "будет использоваться для всех соединений в данном сервере" > > > Виртуальном сервере? В моей конфигурации для каждого виртуального хоста > > свой > > > stapling файл, при тестах сервер отвечает на все запросы. > > > > Речь про блок конфигурации server{}. > > > > > "использовать для получения OCSP-ответов для stapling'а сам nginx, он это > > > умеет" > > > Умеет, но к сожалению, ocsp-сервер не всегда отвечает. Именно поэтому > > > кэширую локально (скрипт не успокоится, пока не получит ответ и не > > обновит > > > файл). Или nginx тоже кэширует ответы? В каком случае они сбрасываются? > > > > Ответы кешируются в рамках рабочего процесса, и возвращаются > > клиентам вплоть до получения нового OCSP-ответа или истечения > > указанного в ответе срока годности. Соответственно, наиболее > > неприятный момент - это перезагрузка конфигурации в тот момент, > > когда OCSP-сервер не отвечает. > > > > Но вообще, если OCSP-сервер не всегда отвечает - это повод сменить > > CA. > > > > > "можно попробовать поднять локально OCSP-responder" > > > Задача к счастью намного (надеюсь) проще - получить минимальный и > > > гарантированный ответ при OCSP запросе. > > > > Что уж может быть проще, чем поднять proxy с кешированием. > > Впрочем, смотри выше про "сменить CA". > > > > Отмечу также в скобках, что OCSP stapling - это механизм > > оптимизации, позволяющий снять работу (точнее, часть работы) по > > получению OCSP-ответов с клиентов и переложить её на сервер. > > Странно ожидать от этого механизма гарантированности чего либо. > > > > > после массового выпуска сертификатов на Let's Encrypt > произошло вот такое > > https://community.letsencrypt.org/t/ocsp-server-returns-unauthorized-status/21965/4 Спасибо, вдохновился: "our database was overloaded, and we use the same database to serve OCSP queries". Но, вроде, сейчас у них всё более или менее нормально. > и, собственно, > > "You may be interested to read these gists about the ways in which OCSP > stapling is implemented suboptimally in Apache and Nginx: > https://gist.github.com/AGWA/1de6c26be5396f7cbce7ee016302d68424 > and > https://gist.github.com/sleevi/5efe9ef98961ecfb4da8" Когда ты CA, и у тебя "database was overloaded" - всё кажется "suboptimal". И очень хочется сделать OCSP stapling обязательным, а клиентов - вообще запретить, чтобы за OCSP ходить и не пытались. Но, к сожалению или к счастью, работает оно не так. Отмечу в скобках, что предложенное выше проксирование - в списке от Ryan Sleevi значится под номером 6, "Distributed or proxiable fetching". -- Maxim Dounin http://nginx.org/ From nginx-forum на forum.nginx.org Mon Apr 17 15:50:00 2017 From: nginx-forum на forum.nginx.org (S.A.N) Date: Mon, 17 Apr 2017 11:50:00 -0400 Subject: =?UTF-8?B?bGlzdGVuIHVuaXggc29ja2V0IC0g0L/QvtGB0LvQtSDQv9C10YDQtdC30LDQs9GA?= =?UTF-8?B?0YPQt9C60LggTmdpbnggLSBmYWlsZWQgKDk4OiBBZGRyZXNzIGFscmVhZHkg?= =?UTF-8?B?aW4gdXNlKQ==?= Message-ID: <94f5a0cfd91b4fa70f64143951e4ca58.NginxMailingListRussian@forum.nginx.org> Может я что-то не так делаю, в конфиге указываю: server { listen unix:/var/run/www/test.sock; .... } Nginx создает файл сокета при старте, но после перезагрузки systemctl restart nginx, файл не удаляется и Nginx не может к нему забиндится, в логе выдает ошибку [emerg] bind() to unix:/var/run/www/test.sock failed (98: Address already in use) Что делать? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273687,273687#msg-273687 From mdounin на mdounin.ru Mon Apr 17 16:35:09 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Mon, 17 Apr 2017 19:35:09 +0300 Subject: =?UTF-8?B?UmU6IGxpc3RlbiB1bml4IHNvY2tldCAtINC/0L7RgdC70LUg0L/QtdGA0LXQt9Cw?= =?UTF-8?B?0LPRgNGD0LfQutC4IE5naW54IC0gZmFpbGVkICg5ODogQWRkcmVzcyBhbHJl?= =?UTF-8?B?YWR5IGluIHVzZSk=?= In-Reply-To: <94f5a0cfd91b4fa70f64143951e4ca58.NginxMailingListRussian@forum.nginx.org> References: <94f5a0cfd91b4fa70f64143951e4ca58.NginxMailingListRussian@forum.nginx.org> Message-ID: <20170417163509.GN13617@mdounin.ru> Hello! On Mon, Apr 17, 2017 at 11:50:00AM -0400, S.A.N wrote: > Может я что-то не так делаю, в конфиге указываю: > > server > { > listen unix:/var/run/www/test.sock; > .... > } > > Nginx создает файл сокета при старте, но после перезагрузки systemctl > restart nginx, файл не удаляется и Nginx не может к нему забиндится, в логе > выдает ошибку > [emerg] bind() to unix:/var/run/www/test.sock failed (98: Address already in > use) > > Что делать? Вариантов как минимум два: - поменять сигнал остановки в описании сервиса systemd на TERM; - не делать restart, а использовать reload. Вообще тикет про это - https://trac.nginx.org/nginx/ticket/753. Но в целом идея, что для остановки nginx'а системными скриптами надо использовать QUIT - она, скажем так, странная. -- Maxim Dounin http://nginx.org/ From dm1998 на list.ru Mon Apr 17 16:50:21 2017 From: dm1998 на list.ru (=?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JzRg9GA0LfQuNC9?=) Date: Mon, 17 Apr 2017 19:50:21 +0300 Subject: =?UTF-8?B?UmVbMl06IFByb3h5IHBhc3Mg0LjQt9C80LXQvdC40YLRjCDQvtGC0LLQtdGC?= In-Reply-To: <14255065.DbrVPkZsLp@note> References: <14255065.DbrVPkZsLp@note> Message-ID: <1492447821.119152112@f323.i.mail.ru> Добрый день! Можете, пожалуйста, подсказать, как это можно сделать с помощью nginx-njs-module? Такое чувство, что если указать одновременно js_content и proxy_pass, то proxy_pass игнорируется и запрос обрабатывает только js_content: location /hello {     proxy_pass http://ya.ru;     js_content baz; } Вроде бы так и должно быть, из документации --- js_content: " Задаёт функцию nginScript в качестве обработчика содержимого location. " Но тогда непонятно как использовать proxy_pass и nginScript вместе. Спасибо! >Воскресенье, 16 апреля 2017, 6:20 +03:00 от "Vadim A. Misbakh-Soloviov" : > >nginx-lua-http(или stream)-module (сторонний) >nginx-njs-module (от авторов nginx, не встроенный) >nginx-perl-module (встроенный) > >Выбирайте. > >Впрочем, про возможность сходить (встроенными функциями) по паре локейшнов, >обработать результат и отдать что-то своё я точно знаю в первом из >перечисленных. Остальные, как-то, не ковырял. Но, думаю, тоже должно быть >можно. >_______________________________________________ >nginx-ru mailing list >nginx-ru на nginx.org >http://mailman.nginx.org/mailman/listinfo/nginx-ru -- С уважением, Дмитрий Мурзин ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Mon Apr 17 17:26:30 2017 From: nginx-forum на forum.nginx.org (S.A.N) Date: Mon, 17 Apr 2017 13:26:30 -0400 Subject: =?UTF-8?B?UmU6IGxpc3RlbiB1bml4IHNvY2tldCAtINC/0L7RgdC70LUg0L/QtdGA0LXQt9Cw?= =?UTF-8?B?0LPRgNGD0LfQutC4IE5naW54IC0gZmFpbGVkICg5ODogQWRkcmVzcyBhbHJl?= =?UTF-8?B?YWR5IGluIHVzZSk=?= In-Reply-To: <20170417163509.GN13617@mdounin.ru> References: <20170417163509.GN13617@mdounin.ru> Message-ID: Maxim Dounin Wrote: > Но в целом идея, что для остановки nginx'а системными скриптами > надо использовать QUIT - она, скажем так, странная. Да, странно зачем в дистрибутиве от Nginx, в файле nginx.service указан QUIT сигнал ExecStop=/bin/kill -s QUIT $MAINPID Если удалить эту строчку, Systemd при остановке и перезагрузки сервиса, отправляет TERM сигнал. Спасибо! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273687,273691#msg-273691 From nginx-forum на forum.nginx.org Mon Apr 17 17:35:07 2017 From: nginx-forum на forum.nginx.org (S.A.N) Date: Mon, 17 Apr 2017 13:35:07 -0400 Subject: =?UTF-8?B?UmU6IGxpc3RlbiB1bml4IHNvY2tldCAtINC/0L7RgdC70LUg0L/QtdGA0LXQt9Cw?= =?UTF-8?B?0LPRgNGD0LfQutC4IE5naW54IC0gZmFpbGVkICg5ODogQWRkcmVzcyBhbHJl?= =?UTF-8?B?YWR5IGluIHVzZSk=?= In-Reply-To: References: <20170417163509.GN13617@mdounin.ru> Message-ID: Возможно по этой же причине Nginx иногда не удалял файлы, по директиве client_body_in_file_only clean; client_body_temp_path - на локал файл системе Наверно, в момент получения QUIT сигнала, процес Nginx завершался и файлы не удалялись. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273687,273692#msg-273692 From nginx-forum на forum.nginx.org Tue Apr 18 05:34:21 2017 From: nginx-forum на forum.nginx.org (alexandre_frolov) Date: Tue, 18 Apr 2017 01:34:21 -0400 Subject: =?UTF-8?B?0KDQtdC00LjRgNC10LrRgiDRgSDQvtC00L3QvtCz0L4g0L/QvtGA0YLQsCDQvdCw?= =?UTF-8?B?INC00YDRg9Cz0L7QuQ==?= Message-ID: Нужно сделать так, чтобы HTTPS-сайт открывался и через стандартный порт 443, и через нестандартный, например, 8082. Подскажите, пожалуйста, можно ли сделать нужный редирект с помощью nginx, и каким образом? Спасибо! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273696,273696#msg-273696 From nginx-forum на forum.nginx.org Tue Apr 18 06:00:48 2017 From: nginx-forum на forum.nginx.org (winmasta) Date: Tue, 18 Apr 2017 02:00:48 -0400 Subject: =?UTF-8?B?UmU6INCa0LDQuiDQv9GA0LDQstC40LvRjNC90L4g0L3QsNGB0YLRgNC+0LjRgtGM?= =?UTF-8?B?IG5naW54IHByb3h5cGFzcz8=?= In-Reply-To: References: Message-ID: Добрый день появилась новая проблема, понадобилось перенаправлять все запросы на root.ru/register на root.ru/auth/register и прочие (имена взяты для примера), кусок конфига ниже, но почему-то перенаправление не происходит, подскажите в где ошибка ? server { listen 80; # return 301 https://$server_name$request_uri; listen 443 ssl; server_name server1.root.ru server2.root.ru server3.root.ru root.ru; ssl_certificate /etc/letsencrypt/live/root.ru/fullchain.pem; ssl_certificate_key /etc/letsencrypt/keys/0005_key-certbot.pem; ssl_protocols TLSv1 TLSv1.1 TLSV1.2; access_log /var/log/nginx/root_proxy.log; location /register { proxy_pass http://192.168.1.28/auth/register; } location /login { proxy_pass http://192.168.1.28/auth/login; } location /resetPass { proxy_pass http://192.168.1.28/auth/resetPass; } location /checkDomain { proxy_pass http://192.168.1.28/auth/checkDomain; } location /setPass { proxy_pass http://192.168.1.28/auth/setPass; } location /logout { proxy_pass http://192.168.1.28/auth/logout; } location / { proxy_pass http://192.168.1.28; } } Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273530,273697#msg-273697 From andrey на kopeyko.ru Tue Apr 18 08:14:53 2017 From: andrey на kopeyko.ru (Andrey Kopeyko) Date: Tue, 18 Apr 2017 11:14:53 +0300 Subject: =?UTF-8?B?UmU6INCg0LXQtNC40YDQtdC60YIg0YEg0L7QtNC90L7Qs9C+INC/0L7RgNGC0LAg?= =?UTF-8?B?0L3QsCDQtNGA0YPQs9C+0Lk=?= In-Reply-To: References: Message-ID: alexandre_frolov писал 2017-04-18 08:34: > Нужно сделать так, чтобы HTTPS-сайт открывался и через стандартный порт > 443, > и через нестандартный, например, 8082. Подскажите, пожалуйста, можно ли > сделать нужный редирект с помощью nginx, и каким образом? Добрый день, Александр! Если вам нужны оба порта - то редирект не понадобится: server { listen 443 ssl; listen 8082 ssl; server_name www.example.com; ... } Если вам надо "собирать" всех на каком-то одном порту - понадобится описать 2 сервера: server { listen 443 ssl; server_name www.example.com; ... } server { listen 8082 ssl; server_name www.example.com; location / { rewrite ^/(.*)$ https://www.example.com/ permanent; } } -- Best regards, Andrey A. Kopeyko From nginx-forum на forum.nginx.org Tue Apr 18 08:49:16 2017 From: nginx-forum на forum.nginx.org (alexandre_frolov) Date: Tue, 18 Apr 2017 04:49:16 -0400 Subject: =?UTF-8?B?UmU6INCg0LXQtNC40YDQtdC60YIg0YEg0L7QtNC90L7Qs9C+INC/0L7RgNGC0LAg?= =?UTF-8?B?0L3QsCDQtNGA0YPQs9C+0Lk=?= In-Reply-To: References: Message-ID: Большое спасибо, помогло! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273696,273699#msg-273699 From thresh на nginx.com Tue Apr 18 13:21:50 2017 From: thresh на nginx.com (Konstantin Pavlov) Date: Tue, 18 Apr 2017 16:21:50 +0300 Subject: =?UTF-8?B?UmU6IGxpc3RlbiB1bml4IHNvY2tldCAtINC/0L7RgdC70LUg0L/QtdGA0LXQt9Cw?= =?UTF-8?B?0LPRgNGD0LfQutC4IE5naW54IC0gZmFpbGVkICg5ODogQWRkcmVzcyBhbHJl?= =?UTF-8?B?YWR5IGluIHVzZSk=?= In-Reply-To: References: <20170417163509.GN13617@mdounin.ru> Message-ID: <0428ebf0-dc92-6ee0-b8cf-bf756862340b@nginx.com> Здравствуйте, On 17/04/2017 20:26, S.A.N wrote: > Maxim Dounin Wrote: >> Но в целом идея, что для остановки nginx'а системными скриптами >> надо использовать QUIT - она, скажем так, странная. > > Да, странно зачем в дистрибутиве от Nginx, в файле nginx.service указан QUIT > сигнал > > ExecStop=/bin/kill -s QUIT $MAINPID > > Если удалить эту строчку, Systemd при остановке и перезагрузки сервиса, > отправляет TERM сигнал. > Спасибо! Спасибо, поправил в http://hg.nginx.org/pkg-oss/rev/fa1476eab346 - будет в следующем релизе "из коробки". -- Konstantin Pavlov From maxim на nginx.com Wed Apr 19 16:00:04 2017 From: maxim на nginx.com (Maxim Konovalov) Date: Wed, 19 Apr 2017 19:00:04 +0300 Subject: nginx development guide In-Reply-To: <20170213093935.GA27929@vlpc.nginx.com> References: <20170213093935.GA27929@vlpc.nginx.com> Message-ID: <753ba02d-27e1-f599-fedd-10ea0735e2bf@nginx.com> Привет. On 13/02/2017 12:39, Vladimir Homutov wrote: > Добрый день! > > Мы рады поделиться с вами первыми результатами наших усилий по созданию > документации для разработчиков nginx: руководством разработчика [1] (en) > > Конечно, руководство не полностью закончено, надеемся, будут и другие части. > > Будем рады любым вашим комментариям. > > [1] http://nginx.org/en/docs/dev/development_guide.html За последнее время ребята значительно расширили этот документ. Будем признательны за комментарии и пожелания. -- Maxim Konovalov From nginx на kinetiksoft.com Thu Apr 20 17:17:07 2017 From: nginx на kinetiksoft.com (=?utf-8?B?0JjQstCw0L0=?=) Date: Thu, 20 Apr 2017 20:17:07 +0300 Subject: =?UTF-8?B?0JrRgtC+INC20LUg0YHQuNC70YzQvdC10LUgQ2FjaGUtQ29udHJvbCDQuNC70Lgg?= =?UTF-8?B?WC1BY2NlbC1FeHBpcmVzPw==?= Message-ID: <6276995.7LnveP1iSd@cybernote> Здравствуйте! Есть конфиг бэкэнда, вот его кусочек: location ~ \.m3u8$ { expires -1; add_header "X-Accel-Expires" "100" } Как следует из русской и английской документации: http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_cache_valid (кстати, как делать красивые короткие ссылки на документацию, которыми оперирует в этом списке рассылки команда nginx?) > Если в заголовке нет поля “X-Accel-Expires”, параметры кэширования > определяются по полям заголовка “Expires” или “Cache-Control”. То есть можно предположить, что приоритет у X-Accel-Expires. Но нет. Как показывает моя практика и, например, этот вопрос: https://serverfault.com/questions/641367/nginx-using-x-accel-expires-with-cache-control Приоритет имеет Cache-control. То есть в такой конфигурации на фронтэнде: location ^~ /video/ { proxy_buffer_size 16k; proxy_buffers 32 16k; proxy_cache video; proxy_cache_lock on; proxy_cache_use_stale updating; proxy_cache_key "$proxy_host$uri"; proxy_pass http://backend; } m3u8 файлы, проходящие через этот локейшен на приведенный выше локейшен бэкэнда кешироваться не будут. Ситуацию спасает только proxy_ignore_headers Expires Cache-Control; Подскажите, пожалуйста, где ошибка: в nginx, документации или моём понимании того или другого? С уважением, Иван. From nginx на kinetiksoft.com Thu Apr 20 17:30:40 2017 From: nginx на kinetiksoft.com (=?utf-8?B?0JjQstCw0L0=?=) Date: Thu, 20 Apr 2017 20:30:40 +0300 Subject: =?UTF-8?B?0JrQsNC6INC/0YDQsNCy0LjQu9GM0L3QviDQutC10YjQuNGA0L7QstCw0YLRjCA=?= =?UTF-8?B?0LfQsNC/0YDQvtGB0Ysg0L7RgiDQsNC90L7QvdC40LzQvtCyPw==?= Message-ID: <12240434.BAR485cOje@cybernote> Здравствуйте! Достаточно популярная, как мне кажется, проблема. Хочу кешировать запросы к какому-то локейшену, например, к / , но только от анонимных пользователей. То есть тех, у которых еще нет для нас никаких кук. Как это правильно сделать в условиях бэкэнда, который, как, например, извините за выражение, битрикс, ставит куку типа PHP_SESSID при любом запросе? То есть по факту мой вопрос сводится к тому, как выполнять fastcgi_ignore_headers Set-Cookie; или не выполнять в зависимости от каких-то условий, например, от наличия уже поставленных пользователю кук. Пока я создал вот такого монстра (он работает, но мне не нравится): map $http_cookie $main_cache { default 0; "" 1; } location = / { if ($main_cache) { rewrite ^ /_main_cache/ last; } fastcgi_pass unix:/run/php-fpm.socket; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/index.php; fastcgi_param HTTP_GEOCOUNTRY $geoip_country_code; } location = /_main_cache/ { internal; #Это чтоб в бэкэнд везде приходил правильный адрес, никто не должен знать про _main_cache rewrite ^ / break; fastcgi_cache main; fastcgi_hide_header "Set-Cookie"; fastcgi_ignore_headers "Cache-Control" "Expires" "Set-Cookie"; fastcgi_cache_valid 200 10s; fastcgi_cache_key "/"; fastcgi_cache_use_stale updating; fastcgi_cache_lock on; #Аноним после первого посещения не аноним, а так как мы игнорируем Set-Cookie ставим средствами nginx. add_header "Set-Cookie" "visited=1; path=/"; fastcgi_pass unix:/run/php-fpm.socket; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/index.php; fastcgi_param HTTP_GEOCOUNTRY $geoip_country_code; } Можно как-то изящнее и феншуйнее? Пожалуйста, не предлагайте переделывать бэкэнд. Это нереально. С уважением, Иван. From mdounin на mdounin.ru Thu Apr 20 18:08:33 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Thu, 20 Apr 2017 21:08:33 +0300 Subject: =?UTF-8?B?UmU6INCa0YLQviDQttC1INGB0LjQu9GM0L3QtdC1IENhY2hlLUNvbnRyb2wg0Lg=?= =?UTF-8?B?0LvQuCBYLUFjY2VsLUV4cGlyZXM/?= In-Reply-To: <6276995.7LnveP1iSd@cybernote> References: <6276995.7LnveP1iSd@cybernote> Message-ID: <20170420180833.GV43932@mdounin.ru> Hello! On Thu, Apr 20, 2017 at 08:17:07PM +0300, Иван wrote: > Здравствуйте! > > Есть конфиг бэкэнда, вот его кусочек: > > location ~ \.m3u8$ { > expires -1; > add_header "X-Accel-Expires" "100" > } > > Как следует из русской и английской документации: > http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_cache_valid > (кстати, как делать красивые короткие ссылки на документацию, которыми > оперирует в этом списке рассылки команда nginx?) > > > Если в заголовке нет поля “X-Accel-Expires”, параметры кэширования > > определяются по полям заголовка “Expires” или “Cache-Control”. > > То есть можно предположить, что приоритет у X-Accel-Expires. > Но нет. Как показывает моя практика и, например, этот вопрос: > https://serverfault.com/questions/641367/nginx-using-x-accel-expires-with-cache-control > > Приоритет имеет Cache-control. То есть в такой конфигурации на фронтэнде: > > location ^~ /video/ { > proxy_buffer_size 16k; > proxy_buffers 32 16k; > > proxy_cache video; > proxy_cache_lock on; > > proxy_cache_use_stale updating; > proxy_cache_key "$proxy_host$uri"; > > proxy_pass http://backend; > } > > m3u8 файлы, проходящие через этот локейшен на приведенный выше локейшен > бэкэнда кешироваться не будут. Ситуацию спасает только > proxy_ignore_headers Expires Cache-Control; > > Подскажите, пожалуйста, где ошибка: в nginx, документации или моём понимании > того или другого? Текущая реализация такова, что если до заголовка X-Accel-Expires встретится заголовок Cache-Control или Expires, запрещающий кеширование совсем, то кеширование будет запрещено. То же самое с Cache-Control vs. Expires: в соответствии со стандартом HTTP/1.1 заголовок Cache-Control имеет приоритет, но если до него в ответе был заголовок Expires, полностью запрещающий кеширование, то кеширование будет запрещено. -- Maxim Dounin http://nginx.org/ From nginx на kinetiksoft.com Thu Apr 20 18:12:14 2017 From: nginx на kinetiksoft.com (=?utf-8?B?0JjQstCw0L0=?=) Date: Thu, 20 Apr 2017 21:12:14 +0300 Subject: =?UTF-8?B?UmU6INCa0YLQviDQttC1INGB0LjQu9GM0L3QtdC1IENhY2hlLUNvbnRyb2wg0Lg=?= =?UTF-8?B?0LvQuCBYLUFjY2VsLUV4cGlyZXM/?= In-Reply-To: <20170420180833.GV43932@mdounin.ru> References: <6276995.7LnveP1iSd@cybernote> <20170420180833.GV43932@mdounin.ru> Message-ID: <3167636.YfGHIpIsxi@cybernote> Здравствуйте! Максим,спасибо за быстрый ответ! Может быть это указать в документации? Пока что процитированная часть документации, как мне кажется, прямо противоречит этому поведению. С уважением, Иван. В письме от 20 апреля 2017 21:08:33 пользователь Maxim Dounin написал: > Hello! > > On Thu, Apr 20, 2017 at 08:17:07PM +0300, Иван wrote: > > Здравствуйте! > > > > Есть конфиг бэкэнда, вот его кусочек: > > > > location ~ \.m3u8$ { > > expires -1; > > add_header "X-Accel-Expires" "100" > > } > > > > Как следует из русской и английской документации: > > http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_cache_valid > > (кстати, как делать красивые короткие ссылки на документацию, которыми > > оперирует в этом списке рассылки команда nginx?) > > > > > Если в заголовке нет поля “X-Accel-Expires”, параметры кэширования > > > определяются по полям заголовка “Expires” или “Cache-Control”. > > > > То есть можно предположить, что приоритет у X-Accel-Expires. > > Но нет. Как показывает моя практика и, например, этот вопрос: > > https://serverfault.com/questions/641367/nginx-using-x-accel-expires-with-> > cache-control > > > > Приоритет имеет Cache-control. То есть в такой конфигурации на фронтэнде: > > > > location ^~ /video/ { > > > > proxy_buffer_size 16k; > > proxy_buffers 32 16k; > > > > proxy_cache video; > > proxy_cache_lock on; > > > > proxy_cache_use_stale updating; > > proxy_cache_key "$proxy_host$uri"; > > > > proxy_pass http://backend; > > > > } > > > > m3u8 файлы, проходящие через этот локейшен на приведенный выше локейшен > > бэкэнда кешироваться не будут. Ситуацию спасает только > > proxy_ignore_headers Expires Cache-Control; > > > > Подскажите, пожалуйста, где ошибка: в nginx, документации или моём > > понимании того или другого? > > Текущая реализация такова, что если до заголовка X-Accel-Expires > встретится заголовок Cache-Control или Expires, запрещающий > кеширование совсем, то кеширование будет запрещено. > > То же самое с Cache-Control vs. Expires: в соответствии со > стандартом HTTP/1.1 заголовок Cache-Control имеет приоритет, но > если до него в ответе был заголовок Expires, полностью запрещающий > кеширование, то кеширование будет запрещено. From mdounin на mdounin.ru Thu Apr 20 18:24:52 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Thu, 20 Apr 2017 21:24:52 +0300 Subject: =?UTF-8?B?UmU6INCa0YLQviDQttC1INGB0LjQu9GM0L3QtdC1IENhY2hlLUNvbnRyb2wg0Lg=?= =?UTF-8?B?0LvQuCBYLUFjY2VsLUV4cGlyZXM/?= In-Reply-To: <3167636.YfGHIpIsxi@cybernote> References: <6276995.7LnveP1iSd@cybernote> <20170420180833.GV43932@mdounin.ru> <3167636.YfGHIpIsxi@cybernote> Message-ID: <20170420182451.GW43932@mdounin.ru> Hello! On Thu, Apr 20, 2017 at 09:12:14PM +0300, Иван wrote: > Максим,спасибо за быстрый ответ! Может быть это указать в документации? Пока > что процитированная часть документации, как мне кажется, прямо противоречит > этому поведению. Скорее нет, чем да. Это поведение надо бы исправить так, чтобы в том числе в случае полного запрета кеширования приоритет заголовков работал корректно, и результат не зависел от порядка заголовков. (Just in case it is not clear, сейчас документация правильно описывает поведение в случае, если ни один из заголовков кеширование не запрещает совсем. Зависимость от порядка возникает тогда и только тогда, когда один из заголовоков кеширование полностью запрещает.) -- Maxim Dounin http://nginx.org/ From a.vasilishin на kpi.ua Thu Apr 20 20:26:20 2017 From: a.vasilishin на kpi.ua (=?UTF-8?B?0JDQvdC00YDQtdC5INCS0LDRgdC40LvQuNGI0LjQvQ==?=) Date: Thu, 20 Apr 2017 23:26:20 +0300 Subject: =?UTF-8?B?MzAxINGA0LXQtNC40YDQtdC60YIg0YDQsNCx0L7RgtCw0LXRgiDQvdC1INCy0YE=?= =?UTF-8?B?0LXQs9C00LA/?= Message-ID: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> Здравствуйте! Есть такая проблема, настроен 301 редирект с кучи доменов на основной, конфиг ниже. Все работает, в логах помино 301 редкие 400 и 408 ответы, но вот счетчик liveinternet, яндекс.вэбмастер все же показывает пару десятков хостов, которые по идее должны были быть отредирекчены на другой домен и их счетчики банально не должны были загрузится. Кто виноват и что делать, есть у кого-нибудь идеи? server { listen 80; server_name www.site.to site.cc www.site.cc www.site.tv site.tv; access_log /var/log/nginx/www.site.access.log main; error_log /var/log/nginx/www.site.error.log warn; rewrite ^(.*)$ http://site.to$request_uri permanent; } # nginx -V nginx version: nginx/1.9.9 built by gcc 4.7.2 (Debian 4.7.2-5) built with OpenSSL 1.0.1e 11 Feb 2013 (running with OpenSSL 1.0.1t 3 May 2016) TLS SNI support enabled configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --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=www-data --group=www-data --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-http_geoip_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-threads --with-stream --with-stream_ssl_module --with-http_slice_module --with-file-aio --with-http_v2_module --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' --with-ld-opt=-Wl,-z,relro --with-ipv6 --with-debug From gmm на csdoc.com Thu Apr 20 20:46:42 2017 From: gmm на csdoc.com (Gena Makhomed) Date: Thu, 20 Apr 2017 23:46:42 +0300 Subject: =?UTF-8?B?UmU6IDMwMSDRgNC10LTQuNGA0LXQutGCINGA0LDQsdC+0YLQsNC10YIg0L3QtSA=?= =?UTF-8?B?0LLRgdC10LPQtNCwPw==?= In-Reply-To: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> References: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> Message-ID: <0eefe00e-172b-7f15-0391-4a0fe41d7d13@csdoc.com> On 20.04.2017 23:26, Андрей Василишин wrote: > rewrite ^(.*)$ http://site.to$request_uri permanent; Выделение ^(.*)$ лишнее, оно потом нигде не используется. Еще при такой директиве при редиректе будут дублироваться аргументы. Надо или добавлять ? после $request_uri или использовать return 301: rewrite ^ http://site.to$request_uri? permanent; return 301 http://site.to$request_uri; Последний вариант короче и предпочтительнее всего. -- Best regards, Gena From bgx на protva.ru Thu Apr 20 21:01:06 2017 From: bgx на protva.ru (Evgeniy Berdnikov) Date: Fri, 21 Apr 2017 00:01:06 +0300 Subject: =?UTF-8?B?UmU6IDMwMSDRgNC10LTQuNGA0LXQutGCINGA0LDQsdC+0YLQsNC10YIg0L3QtSA=?= =?UTF-8?B?0LLRgdC10LPQtNCwPw==?= In-Reply-To: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> References: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> Message-ID: <20170420210106.heuz43qydve7o4qs@protva.ru> On Thu, Apr 20, 2017 at 11:26:20PM +0300, Андрей Василишин wrote: > Есть такая проблема, настроен 301 редирект с кучи доменов на основной, > конфиг ниже. Все работает, в логах помино 301 редкие 400 и 408 ответы, > но вот счетчик liveinternet, яндекс.вэбмастер все же показывает пару > десятков хостов, которые по идее должны были быть отредирекчены на > другой домен и их счетчики банально не должны были загрузится. > Кто виноват и что делать, есть у кого-нибудь идеи? Если страница кэшируемая (например, без явного expires), то она может быть оставлена в одном из табов, тогда счётчик сработает при очередном запуске браузера без обращения к серверу. -- Eugene Berdnikov From a.vasilishin на kpi.ua Thu Apr 20 21:06:41 2017 From: a.vasilishin на kpi.ua (=?UTF-8?B?0JDQvdC00YDQtdC5INCS0LDRgdC40LvQuNGI0LjQvQ==?=) Date: Fri, 21 Apr 2017 00:06:41 +0300 Subject: =?UTF-8?B?UmU6IDMwMSDRgNC10LTQuNGA0LXQutGCINGA0LDQsdC+0YLQsNC10YIg0L3QtSA=?= =?UTF-8?B?0LLRgdC10LPQtNCwPw==?= In-Reply-To: <0eefe00e-172b-7f15-0391-4a0fe41d7d13@csdoc.com> References: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> <0eefe00e-172b-7f15-0391-4a0fe41d7d13@csdoc.com> Message-ID: <3a0bd9a0-ed50-e4d5-3516-5664a8bd421a@kpi.ua> 20.04.2017 23:46, Gena Makhomed пишет: > On 20.04.2017 23:26, Андрей Василишин wrote: > >> rewrite ^(.*)$ http://site.to$request_uri permanent; > > Выделение ^(.*)$ лишнее, оно потом нигде не используется. > > Еще при такой директиве при редиректе будут дублироваться аргументы. > > Надо или добавлять ? после $request_uri или использовать return 301: > > rewrite ^ http://site.to$request_uri? permanent; > > return 301 http://site.to$request_uri; > > Последний вариант короче и предпочтительнее всего. > Спасибо за ликбез! From a.vasilishin на kpi.ua Thu Apr 20 21:08:15 2017 From: a.vasilishin на kpi.ua (=?UTF-8?B?0JDQvdC00YDQtdC5INCS0LDRgdC40LvQuNGI0LjQvQ==?=) Date: Fri, 21 Apr 2017 00:08:15 +0300 Subject: =?UTF-8?B?UmU6IDMwMSDRgNC10LTQuNGA0LXQutGCINGA0LDQsdC+0YLQsNC10YIg0L3QtSA=?= =?UTF-8?B?0LLRgdC10LPQtNCwPw==?= In-Reply-To: <20170420210106.heuz43qydve7o4qs@protva.ru> References: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> <20170420210106.heuz43qydve7o4qs@protva.ru> Message-ID: <43d6547a-e957-d9b8-1610-b4e44452abaf@kpi.ua> > Если страница кэшируемая (например, без явного expires), то она может > быть оставлена в одном из табов, тогда счётчик сработает при очередном > запуске браузера без обращения к серверу. > просто странно, редирект со старого домена на новый был сделал уже пол года назад, а на старом домене все равно умудряются загружать счетчики From chipitsine на gmail.com Thu Apr 20 22:15:49 2017 From: chipitsine на gmail.com (=?UTF-8?B?0JjQu9GM0Y8g0KjQuNC/0LjRhtC40L0=?=) Date: Fri, 21 Apr 2017 03:15:49 +0500 Subject: =?UTF-8?B?UmU6IDMwMSDRgNC10LTQuNGA0LXQutGCINGA0LDQsdC+0YLQsNC10YIg0L3QtSA=?= =?UTF-8?B?0LLRgdC10LPQtNCwPw==?= In-Reply-To: <43d6547a-e957-d9b8-1610-b4e44452abaf@kpi.ua> References: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> <20170420210106.heuz43qydve7o4qs@protva.ru> <43d6547a-e957-d9b8-1610-b4e44452abaf@kpi.ua> Message-ID: 21 апреля 2017 г., 2:08 пользователь Андрей Василишин написал: > > > Если страница кэшируемая (например, без явного expires), то она может > > быть оставлена в одном из табов, тогда счётчик сработает при очередном > > запуске браузера без обращения к серверу. > > > > > просто странно, редирект со старого домена на новый был сделал уже пол > года назад, а на старом домене все равно умудряются загружать счетчики > а вы по логам видите только обращения к счетчикам, или 200 к старому домену ? > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From a.vasilishin на kpi.ua Fri Apr 21 05:49:08 2017 From: a.vasilishin на kpi.ua (=?UTF-8?B?0JDQvdC00YDQtdC5INCS0LDRgdC40LvQuNGI0LjQvQ==?=) Date: Fri, 21 Apr 2017 08:49:08 +0300 Subject: =?UTF-8?B?UmU6IDMwMSDRgNC10LTQuNGA0LXQutGCINGA0LDQsdC+0YLQsNC10YIg0L3QtSA=?= =?UTF-8?B?0LLRgdC10LPQtNCwPw==?= In-Reply-To: References: <7c6e8369-8c20-808c-414d-ac7beeaf3de9@kpi.ua> <20170420210106.heuz43qydve7o4qs@protva.ru> <43d6547a-e957-d9b8-1610-b4e44452abaf@kpi.ua> Message-ID: <2f4cf648-aa67-ca9d-1390-312ae9769882@kpi.ua> > а вы по логам видите только обращения к счетчикам, или 200 к старому > домену ? > По логам вижу только 301 редирект и редкие 400 и 408 ошибки From nginx-forum на forum.nginx.org Fri Apr 21 07:06:33 2017 From: nginx-forum на forum.nginx.org (winmasta) Date: Fri, 21 Apr 2017 03:06:33 -0400 Subject: =?UTF-8?B?0J/QvtC80L7Qs9C40YLQtSDRgSDQv9C10YDQtdCw0LTRgNC10YHQsNGG0LjQtdC5?= =?UTF-8?B?Lg==?= Message-ID: <155c721759e14429d166bfb3ccc89ecd.NginxMailingListRussian@forum.nginx.org> Добрый день появилась проблема, понадобилось перенаправлять все запросы на root.ru/register на root.ru/auth/register и прочие (имена взяты для примера), кусок конфига ниже, но почему-то перенаправление не происходит, подскажите где ошибка ? server { listen 80; # return 301 https://$server_name$request_uri; listen 443 ssl; server_name server1.root.ru server2.root.ru server3.root.ru root.ru; ssl_certificate /etc/letsencrypt/live/root.ru/fullchain.pem; ssl_certificate_key /etc/letsencrypt/keys/0005_key-certbot.pem; ssl_protocols TLSv1 TLSv1.1 TLSV1.2; access_log /var/log/nginx/root_proxy.log; location /register { proxy_pass http://192.168.1.28/auth/register; } location /login { proxy_pass http://192.168.1.28/auth/login; } location /resetPass { proxy_pass http://192.168.1.28/auth/resetPass; } location /checkDomain { proxy_pass http://192.168.1.28/auth/checkDomain; } location /setPass { proxy_pass http://192.168.1.28/auth/setPass; } location /logout { proxy_pass http://192.168.1.28/auth/logout; } location / { proxy_pass http://192.168.1.28; } } Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273774,273774#msg-273774 From mdounin на mdounin.ru Tue Apr 25 14:32:47 2017 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 25 Apr 2017 17:32:47 +0300 Subject: nginx-1.13.0 Message-ID: <20170425143246.GL43932@mdounin.ru> Изменения в nginx 1.13.0 25.04.2017 *) Изменение: теперь SSL renegotiation допускается в соединениях к бэкендам. *) Добавление: параметры rcvbuf и sndbuf директив listen в почтовом прокси-сервере и модуле stream. *) Добавление: директивы return и error_page теперь могут использоваться для возврата перенаправлений с кодом 308. Спасибо Simon Leblanc. *) Добавление: параметр TLSv1.3 в директиве ssl_protocols. *) Добавление: при логгировании сигналов теперь указывается PID отправившего сигнал процесса. *) Исправление: в обработке ошибок выделения памяти. *) Исправление: если сервер в модуле stream слушал на wildcard-адресе, исходящий адрес ответного UDP-пакета мог отличаться от адреса назначения исходного пакета. -- Maxim Dounin http://nginx.org/ From tolmachev.vlad на gmail.com Fri Apr 28 05:22:20 2017 From: tolmachev.vlad на gmail.com (=?UTF-8?B?0JLQu9Cw0LTQuNGB0LvQsNCyINCi0L7Qu9C80LDRh9C10LI=?=) Date: Fri, 28 Apr 2017 12:22:20 +0700 Subject: =?UTF-8?B?bmdpbngg0L/QtdGA0LXRgdGC0LDQtdGCINGB0LvQtdC00LjRgtGMINC30LAg0YA=?= =?UTF-8?B?0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNoZV9w?= =?UTF-8?B?YXRjaA==?= Message-ID: иногда, в не зависимости от нагрузки, nginx перестает следить за размером каталога proxy_cache_patch и каталог начинает выходить за пределы установленного размера и забивает полностью диск. Каталог находится на raid0 из 12 ssd по 240G, там около 2.5М файлов кэша hls видео proxy_cache_path /var/www/nginx/nginx_proxy_cache levels=1:2 keys_zone=two:1536m inactive=1y max_size=2350G loader_files=1000 loader_sleep=10ms loader_threshold=8000ms manager_files=500 manager_threshold=1000ms manager_sleep=50ms use_temp_path=off; не помогает kill процесс nginx cache manager, только полный рестарт nginx, после чего он очищает забитый диск/папку до установленного лимита. Что сделать, что бы он не переставал следить за размером кэша? поймать дебаг трудно так как это может произойти только раз в месяц, а может и через 2 дня никакой зависимости не выявлено. Стандартные параметры manager_file или те, которые я установил не дают эффекта, все равно в один прекрасный момент диск забивается полностью. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Fri Apr 28 15:13:44 2017 From: nginx-forum на forum.nginx.org (A7exius) Date: Fri, 28 Apr 2017 11:13:44 -0400 Subject: =?UTF-8?Q?Re=3A_sub_filter_=D0=B8_ssl?= In-Reply-To: <1968280.sdzE7aGysd@vbart-workstation> References: <1968280.sdzE7aGysd@vbart-workstation> Message-ID: <10d8b54b6eaf15141aa746bccc27cc1b.NginxMailingListRussian@forum.nginx.org> И итоге напишу как решилось: добавлением в fastcgi_pass_request_headers off или для proxy_pass_request_headers off соответственно. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273389,273967#msg-273967 From serg на petrovich.kiev.ua Fri Apr 28 19:40:16 2017 From: serg на petrovich.kiev.ua (Serge Negodyuck) Date: Fri, 28 Apr 2017 22:40:16 +0300 Subject: =?UTF-8?B?UmU6IG5naW54INC/0LXRgNC10YHRgtCw0LXRgiDRgdC70LXQtNC40YLRjCDQt9Cw?= =?UTF-8?B?INGA0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNo?= =?UTF-8?B?ZV9wYXRjaA==?= In-Reply-To: References: Message-ID: Два года уже мучаемся с подобной проблемой. Начало здесь: https://forum.nginx.org/read.php?21,258292,258864 Чего только не пробовали - рестарт гарнтировано помогает, остальное не факт. По сути, окончательно проблема у нас решилась только когда один большой кеш разбили на несколько разных кешей поменьше. Как подобрать макимальный размер, сложно сказать. Он как-то зависит от скорости дисков и нагрузки. На одних серверах (SSD raid0, 2 диска) max_size=450g - это предел. На других (просто один SSD) max_size=190g При том, что disk utilization никогда к 100% не подбиралась ни там ни там. 28 апреля 2017 г., 8:22 пользователь Владислав Толмачев < tolmachev.vlad на gmail.com> написал: > иногда, в не зависимости от нагрузки, nginx перестает следить за размером > каталога proxy_cache_patch и каталог начинает выходить за пределы > установленного размера и забивает полностью диск. Каталог находится на > raid0 из 12 ssd по 240G, там около 2.5М файлов кэша hls видео > > proxy_cache_path /var/www/nginx/nginx_proxy_cache levels=1:2 > keys_zone=two:1536m inactive=1y max_size=2350G loader_files=1000 > loader_sleep=10ms loader_threshold=8000ms manager_files=500 > manager_threshold=1000ms manager_sleep=50ms use_temp_path=off; > > не помогает kill процесс nginx cache manager, только полный рестарт nginx, > после чего он очищает забитый диск/папку до установленного лимита. > > Что сделать, что бы он не переставал следить за размером кэша? поймать > дебаг трудно так как это может произойти только раз в месяц, а может и > через 2 дня никакой зависимости не выявлено. Стандартные параметры > manager_file или те, которые я установил не дают эффекта, все равно в один > прекрасный момент диск забивается полностью. > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From nginx-forum на forum.nginx.org Fri Apr 28 19:41:51 2017 From: nginx-forum на forum.nginx.org (alpi) Date: Fri, 28 Apr 2017 15:41:51 -0400 Subject: =?UTF-8?B?0JfQsNCz0YDRg9C30LrQsCDRgdGC0LDRgtC40LrQuCDRgSDQtNGA0YPQs9C+0LM=?= =?UTF-8?B?0L4g0LTQvtC80LXQvdCw?= Message-ID: <9e1ad6f9b0a78cad965e4ffbe21bf83b.NginxMailingListRussian@forum.nginx.org> Доброго времени суток. В процессе миграции с апача столкнулся с проблемой при загрузке статики. Дано: основной домен site.com, установлен скрипт блога, который должен открываться с адреса blog.site.com. root для блога такой же, как для основного домена /var/www/site.com То есть, при переходе по blog.site.com , статика должна грузиться с домена site.com. Не получается так сделать - все картинки на blog.site.com указываются как http://http://blog.site.com/img.jpg Хотя мне нужно чтобы они грузились с site.com/img.jpg Как это правильно сделать ? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273974,273974#msg-273974 From serg на petrovich.kiev.ua Fri Apr 28 20:16:51 2017 From: serg на petrovich.kiev.ua (Serge Negodyuck) Date: Fri, 28 Apr 2017 23:16:51 +0300 Subject: =?UTF-8?B?UmU6INCc0L7QttC90L4g0LvQuCDQt9Cw0YHQutGA0LjQv9GC0L7QstCw0YLRjCA=?= =?UTF-8?B?0L3QtdGB0LvQvtC20L3Rg9GOINC70L7Qs9C40LrRgyDQv9GA0Y/QvNC+INCy?= =?UTF-8?B?INC60L7QvdGE0LjQs9C1Pw==?= In-Reply-To: References: Message-ID: Примеры ниже дают только идею реализации, детали реализации нужно проработать. Вариант 1. map $http_host $backend { NNN1.example.com IP_ADDR_FOR_NNN1/; NNN2.example.com IP_ADDR_FOR_NNN2/; } ... proxy_pass http://$backend Вариант 2. Свой сервис который выдает X-Accel-Redirect: /use_host/IP_ADDR_FOR_NNN location / { proxy_pass http://myservice; } location ~* ^/use_host/(.*)$ { internal; proxy_pass http://$1; } Вариант 3. > по очень простому алгоритму вычисляется внутренний IP-адрес Если алгоритм можно описать регулярным выражением. location / { rewrite / /use_host/$http_host; } location ~ ^/use_host/(\w+).example.com$ { internal; proxy_pass http://P_ADDR_FOR_$1; } Вариант 4. http://nginx.org/ru/docs/http/ngx_http_perl_module.html Вариант 5. https://github.com/openresty/lua-nginx-module 17 апреля 2017 г., 16:18 пользователь Alexander Simakov написал: > Думаю что нет. Мне ведь не нужно балансировать нагрузку > между несколькими бэкэндами. > > Требуется все запросы на определённый домен всегда > перенаправлять на заданный IP. Таких пар "домен -> IP" > может быть несколько десятков тысяч, при том, что нужный > IP-адрес вычисляется по домену одной строчкой кода. > Вот и возник вопрос: можно ли обойтись без длинного > и однообразного конфига. > > > С уважением, > Александр Симаков > > 17 апреля 2017 г., 15:48 пользователь Дмитрий Андреев > написал: > > http://nginx.org/ru/docs/http/ngx_http_upstream_module.html#hash - не >> подходит? >> >> пн, 17 апр. 2017 г. в 14:37, Alexander Simakov : >> >>> Добрый день! >>> >>> Подскажите, пожалуйста, как наиболее оптимальным >>> способом решить следующую задачу: >>> >>> NGINX используется качестве прокси для входящих >>> из интернета HTTPS и WebSocket-соединений. >>> >>> Запросы приходят на домены вида NNNN.example.com, >>> где NNNN - некое число. Для каждого NNNN по очень >>> простому алгоритму вычисляется внутренний IP-адрес >>> на который нужно пробросить данное соединение. >>> >>> Вот пример конфигурации: >>> >>> ==8<== >>> server { >>> listen 443; >>> server_name NNNN.example.com; >>> >>> location / { >>> proxy_pass http://IP_ADDR_FOR_NNNN/; >>> } >>> >>> location /ws/ { >>> proxy_pass http://IP_ADDR_FOR_NNNN/ws/; >>> proxy_http_version 1.1; >>> proxy_set_header Upgrade $http_upgrade; >>> proxy_set_header Connection "upgrade"; >>> } >>> } >>> ==8<== >>> >>> Сейчас я вынужден программно генерировать большие >>> статические файлы-портянки в которых порядка 1000 >>> таких секций. >>> >>> Подскажите, можно ли в данном примере как-то заскриптовать >>> логику получения IP-адреса по NNNN и иметь один компактный >>> и универсальный файл? Или, может, как-то предвычислить для >>> NGINX хеш { NNNN -> IP_ADDR_FOR_NNNN } и использовать его >>> в конфиге? >>> >>> Спасибо. >>> >>> С уважением, >>> Александр Симаков >>> _______________________________________________ >>> 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 >> > > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From tolmachev.vlad на gmail.com Fri Apr 28 23:58:18 2017 From: tolmachev.vlad на gmail.com (=?UTF-8?B?0JLQu9Cw0LTQuNGB0LvQsNCyINCi0L7Qu9C80LDRh9C10LI=?=) Date: Fri, 28 Apr 2017 23:58:18 +0000 Subject: =?UTF-8?B?UmU6IG5naW54INC/0LXRgNC10YHRgtCw0LXRgiDRgdC70LXQtNC40YLRjCDQt9Cw?= =?UTF-8?B?INGA0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNo?= =?UTF-8?B?ZV9wYXRjaA==?= In-Reply-To: References: Message-ID: Как можно сделать несколько кэшей у одного локейшена? Либо делать грабли и разбивать один локейшн на несколько виртуальных? И у каждого свой кэш? сб, 29 апр. 2017 г. в 2:40, Serge Negodyuck : > Два года уже мучаемся с подобной проблемой. Начало здесь: > https://forum.nginx.org/read.php?21,258292,258864 > Чего только не пробовали - рестарт гарнтировано помогает, остальное не > факт. > > По сути, окончательно проблема у нас решилась только когда один большой > кеш разбили на несколько разных кешей поменьше. > Как подобрать макимальный размер, сложно сказать. Он как-то зависит от > скорости дисков и нагрузки. > > На одних серверах (SSD raid0, 2 диска) max_size=450g - это предел. На > других (просто один SSD) max_size=190g > При том, что disk utilization никогда к 100% не подбиралась ни там ни там. > > > 28 апреля 2017 г., 8:22 пользователь Владислав Толмачев < > tolmachev.vlad на gmail.com> написал: > >> иногда, в не зависимости от нагрузки, nginx перестает следить за размером >> каталога proxy_cache_patch и каталог начинает выходить за пределы >> установленного размера и забивает полностью диск. Каталог находится на >> raid0 из 12 ssd по 240G, там около 2.5М файлов кэша hls видео >> >> proxy_cache_path /var/www/nginx/nginx_proxy_cache levels=1:2 >> keys_zone=two:1536m inactive=1y max_size=2350G loader_files=1000 >> loader_sleep=10ms loader_threshold=8000ms manager_files=500 >> manager_threshold=1000ms manager_sleep=50ms use_temp_path=off; >> >> не помогает kill процесс nginx cache manager, только полный рестарт >> nginx, после чего он очищает забитый диск/папку до установленного лимита. >> >> Что сделать, что бы он не переставал следить за размером кэша? поймать >> дебаг трудно так как это может произойти только раз в месяц, а может и >> через 2 дня никакой зависимости не выявлено. Стандартные параметры >> manager_file или те, которые я установил не дают эффекта, все равно в один >> прекрасный момент диск забивается полностью. >> >> _______________________________________________ >> 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 -- С уважением Толмачев Владислав. tolmachev.vlad на gmail.com skype: vladislaviki icq: 274888266 ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From sytar.alex на gmail.com Sun Apr 30 06:47:52 2017 From: sytar.alex на gmail.com (Aleksandr Sytar) Date: Sun, 30 Apr 2017 09:47:52 +0300 Subject: =?UTF-8?B?UmU6IG5naW54INC/0LXRgNC10YHRgtCw0LXRgiDRgdC70LXQtNC40YLRjCDQt9Cw?= =?UTF-8?B?INGA0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNo?= =?UTF-8?B?ZV9wYXRjaA==?= In-Reply-To: References: Message-ID: 28 апреля 2017 г., 22:40 пользователь Serge Negodyuck < serg на petrovich.kiev.ua> написал: > Два года уже мучаемся с подобной проблемой. Начало здесь: > https://forum.nginx.org/read.php?21,258292,258864 > Чего только не пробовали - рестарт гарнтировано помогает, остальное не > факт. > > Кхм, а файловая система с кешем часом не монтирована с опцией noatime, nodiratime? ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From tolmachev.vlad на gmail.com Sun Apr 30 06:52:28 2017 From: tolmachev.vlad на gmail.com (=?UTF-8?B?0JLQu9Cw0LTQuNGB0LvQsNCyINCi0L7Qu9C80LDRh9C10LI=?=) Date: Sun, 30 Apr 2017 06:52:28 +0000 Subject: =?UTF-8?B?UmU6IG5naW54INC/0LXRgNC10YHRgtCw0LXRgiDRgdC70LXQtNC40YLRjCDQt9Cw?= =?UTF-8?B?INGA0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNo?= =?UTF-8?B?ZV9wYXRjaA==?= In-Reply-To: References: Message-ID: Монтирована с noatime, кэшу разве нужны эти параметры? Nginx разве сам не отслеживает последний доступ к файлу в keys_zone? Причем переполнение происходит не постоянно, а может раз в неделю только... может и раз в день, поймать трудно... вс, 30 апр. 2017 г. в 13:48, Aleksandr Sytar : > > 28 апреля 2017 г., 22:40 пользователь Serge Negodyuck < > serg на petrovich.kiev.ua> написал: > > Два года уже мучаемся с подобной проблемой. Начало здесь: >> https://forum.nginx.org/read.php?21,258292,258864 >> Чего только не пробовали - рестарт гарнтировано помогает, остальное не >> факт. >> >> > Кхм, а файловая система с кешем часом не монтирована с опцией noatime, > nodiratime? > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru -- С уважением Толмачев Владислав. tolmachev.vlad на gmail.com skype: vladislaviki icq: 274888266 ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From basil на vpm.net.ua Sun Apr 30 14:00:00 2017 From: basil на vpm.net.ua (Vasiliy P. Melnik) Date: Sun, 30 Apr 2017 17:00:00 +0300 Subject: =?UTF-8?B?UmU6IG5naW54INC/0LXRgNC10YHRgtCw0LXRgiDRgdC70LXQtNC40YLRjCDQt9Cw?= =?UTF-8?B?INGA0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNo?= =?UTF-8?B?ZV9wYXRjaA==?= In-Reply-To: References: Message-ID: у меня кеш замонтирован с noatime - все отлично чиститься /dev/sda1 on /var/lib/nginx/sda1 type ext4 (rw,noatime,discard,data=ordered) /dev/sdb1 on /var/lib/nginx/sdb1 type ext4 (rw,noatime,discard,data=ordered) /dev/sdd1 on /var/lib/nginx/sdc1 type ext4 (rw,noatime,discard,data=ordered) /dev/sdc1 on /var/lib/nginx/sdd1 type ext4 (rw,noatime,discard,data=ordered) 30 апреля 2017 г., 9:52 пользователь Владислав Толмачев < tolmachev.vlad на gmail.com> написал: > Монтирована с noatime, кэшу разве нужны эти параметры? Nginx разве сам не > отслеживает последний доступ к файлу в keys_zone? Причем переполнение > происходит не постоянно, а может раз в неделю только... может и раз в день, > поймать трудно... > > вс, 30 апр. 2017 г. в 13:48, Aleksandr Sytar : > >> >> 28 апреля 2017 г., 22:40 пользователь Serge Negodyuck < >> serg на petrovich.kiev.ua> написал: >> >> Два года уже мучаемся с подобной проблемой. Начало здесь: >>> https://forum.nginx.org/read.php?21,258292,258864 >>> Чего только не пробовали - рестарт гарнтировано помогает, остальное не >>> факт. >>> >>> >> Кхм, а файловая система с кешем часом не монтирована с опцией noatime, >> nodiratime? >> >> _______________________________________________ >> nginx-ru mailing list >> nginx-ru на nginx.org >> http://mailman.nginx.org/mailman/listinfo/nginx-ru > > -- > > С уважением Толмачев Владислав. > tolmachev.vlad на gmail.com > skype: vladislaviki > icq: 274888266 > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From basil на vpm.net.ua Sun Apr 30 14:01:31 2017 From: basil на vpm.net.ua (Vasiliy P. Melnik) Date: Sun, 30 Apr 2017 17:01:31 +0300 Subject: =?UTF-8?B?UmU6IG5naW54INC/0LXRgNC10YHRgtCw0LXRgiDRgdC70LXQtNC40YLRjCDQt9Cw?= =?UTF-8?B?INGA0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNo?= =?UTF-8?B?ZV9wYXRjaA==?= In-Reply-To: References: Message-ID: В дополнение к вопросу: а как обстоят дела с io на винтах с кешем? можно atop-ом посмотреть. У меня пока стояли обычные винты тоже кеш не чистился - не успевал банально 30 апреля 2017 г., 9:52 пользователь Владислав Толмачев < tolmachev.vlad на gmail.com> написал: > Монтирована с noatime, кэшу разве нужны эти параметры? Nginx разве сам не > отслеживает последний доступ к файлу в keys_zone? Причем переполнение > происходит не постоянно, а может раз в неделю только... может и раз в день, > поймать трудно... > > вс, 30 апр. 2017 г. в 13:48, Aleksandr Sytar : > >> >> 28 апреля 2017 г., 22:40 пользователь Serge Negodyuck < >> serg на petrovich.kiev.ua> написал: >> >> Два года уже мучаемся с подобной проблемой. Начало здесь: >>> https://forum.nginx.org/read.php?21,258292,258864 >>> Чего только не пробовали - рестарт гарнтировано помогает, остальное не >>> факт. >>> >>> >> Кхм, а файловая система с кешем часом не монтирована с опцией noatime, >> nodiratime? >> >> _______________________________________________ >> nginx-ru mailing list >> nginx-ru на nginx.org >> http://mailman.nginx.org/mailman/listinfo/nginx-ru > > -- > > С уважением Толмачев Владислав. > tolmachev.vlad на gmail.com > skype: vladislaviki > icq: 274888266 > > _______________________________________________ > nginx-ru mailing list > nginx-ru на nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From tolmachev.vlad на gmail.com Sun Apr 30 14:02:59 2017 From: tolmachev.vlad на gmail.com (=?UTF-8?B?0JLQu9Cw0LTQuNGB0LvQsNCyINCi0L7Qu9C80LDRh9C10LI=?=) Date: Sun, 30 Apr 2017 14:02:59 +0000 Subject: =?UTF-8?B?UmU6IG5naW54INC/0LXRgNC10YHRgtCw0LXRgiDRgdC70LXQtNC40YLRjCDQt9Cw?= =?UTF-8?B?INGA0LDQt9C80LXRgNC+0Lwg0LrQsNGC0LDQu9C+0LPQsCBwcm94eV9jYWNo?= =?UTF-8?B?ZV9wYXRjaA==?= In-Reply-To: References: Message-ID: Все нормально, спокойно переживает пик нагрузки, и под утро может перестать чистить, не похоже на io. вс, 30 апр. 2017 г. в 21:01, Vasiliy P. Melnik : > В дополнение к вопросу: > > а как обстоят дела с io на винтах с кешем? можно atop-ом посмотреть. У > меня пока стояли обычные винты тоже кеш не чистился - не успевал банально > > 30 апреля 2017 г., 9:52 пользователь Владислав Толмачев < > tolmachev.vlad на gmail.com> написал: > > Монтирована с noatime, кэшу разве нужны эти параметры? Nginx разве сам не >> отслеживает последний доступ к файлу в keys_zone? Причем переполнение >> происходит не постоянно, а может раз в неделю только... может и раз в день, >> поймать трудно... >> >> вс, 30 апр. 2017 г. в 13:48, Aleksandr Sytar : >> >>> >>> 28 апреля 2017 г., 22:40 пользователь Serge Negodyuck < >>> serg на petrovich.kiev.ua> написал: >>> >>> Два года уже мучаемся с подобной проблемой. Начало здесь: >>>> https://forum.nginx.org/read.php?21,258292,258864 >>>> Чего только не пробовали - рестарт гарнтировано помогает, остальное не >>>> факт. >>>> >>>> >>> Кхм, а файловая система с кешем часом не монтирована с опцией noatime, >>> nodiratime? >>> >>> _______________________________________________ >>> nginx-ru mailing list >>> nginx-ru на nginx.org >>> http://mailman.nginx.org/mailman/listinfo/nginx-ru >> >> -- >> >> С уважением Толмачев Владислав. >> tolmachev.vlad на gmail.com >> skype: vladislaviki >> icq: 274888266 >> >> _______________________________________________ >> 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 -- С уважением Толмачев Владислав. tolmachev.vlad на gmail.com skype: vladislaviki icq: 274888266 ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: