CGI от Apache, сломанная труба - PullRequest
       18

CGI от Apache, сломанная труба

0 голосов
/ 08 сентября 2018

Что происходит с Apache (или Nginx), выполняющим скрипт CGI, когда клиент (я имею в виду браузер или шлюз TCP) отключается в середине?

  1. Apache / Nginxвойти ошибка?(Если да, то какой и где?)

  2. Отправляется ли сценарий CGI SIGPIPE?

1 Ответ

0 голосов
/ 25 сентября 2018

SIGPIPE отсутствует, когда сценарий Apache CGI прерван.

Протестировано со следующим кодом:

#!/usr/bin/perl

use strict;
use warnings;

$| = 1;

#$SIG{PIPE} = "IGNORE";
$SIG{PIPE} = sub {
  open my $f, '>', 'log.txt';
  print $f "PIPE: $ENV{SERVER_NAME}\n";
  close $f;
};

print "Content-Type: text/plain\n\n";

sleep 10;

print "OK";
...