Всех приветствую!
Есть простой perl-модуль, который работает под nginx без проблем на древних версиях (кажется до 1.7), а на свежих версиях nginx этот модуль приводит к тому, что воркеры начинают падать в корку по SIGSEGV.
Разобрал модуль до мелочей и нашёл, что всё падает на send_http_header().
Вот пример этого модуля:
package post_download;
use nginx;
use strict;
sub handler {
my $r = shift;
$r->send_http_header("text/plain");
$r->print("OK\n");
return OK;
}
Воркеры падают не на каждый такой запрос, а после нескольких таких запросов.
Подключается этот модуль обычным способом:
perl_require /etc/nginx/perl/post_download.pm;
100% баг наблюдается на двух версиях: 1.12.2 и на 1.15.0.