annotate conf/fastcgi.conf @ 8299:83c4622053b0

Upstream: fixed zero size buf alerts on extra data (ticket #2117). After 7675:9afa45068b8f and 7678:bffcc5af1d72 (1.19.1), during non-buffered simple proxying, responses with extra data might result in zero size buffers being generated and "zero size buf" alerts in writer. This bug is similar to the one with FastCGI proxying fixed in 7689:da8d758aabeb. In non-buffered mode, normally the filter function is not called if u->length is already 0, since u->length is checked after each call of the filter function. There is a case when this can happen though: if the response length is 0, and there are pre-read response body data left after reading response headers. As such, a check for u->length is needed at the start of non-buffered filter functions, similar to the one for p->length present in buffered filter functions. Appropriate checks added to the existing non-buffered copy filters in the upstream (used by scgi and uwsgi proxying) and proxy modules.
author Maxim Dounin <mdounin@mdounin.ru>
date Tue, 12 Jan 2021 16:59:31 +0300
parents 62869a9b2e7d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
537
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
1
3383
5aeaf8490578 add conf/fastcgi.conf
Igor Sysoev <igor@sysoev.ru>
parents: 1330
diff changeset
2 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
537
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
3 fastcgi_param QUERY_STRING $query_string;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
4 fastcgi_param REQUEST_METHOD $request_method;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5 fastcgi_param CONTENT_TYPE $content_type;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6 fastcgi_param CONTENT_LENGTH $content_length;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 fastcgi_param SCRIPT_NAME $fastcgi_script_name;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
9 fastcgi_param REQUEST_URI $request_uri;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10 fastcgi_param DOCUMENT_URI $document_uri;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11 fastcgi_param DOCUMENT_ROOT $document_root;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
12 fastcgi_param SERVER_PROTOCOL $server_protocol;
6168
62869a9b2e7d Added the REQUEST_SCHEME parameter.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4379
diff changeset
13 fastcgi_param REQUEST_SCHEME $scheme;
4379
4e2551a83291 Added the HTTPS fastcgi_param to fastcgi.conf.
Valentin Bartenev <vbart@nginx.com>
parents: 3383
diff changeset
14 fastcgi_param HTTPS $https if_not_empty;
537
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
15
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
16 fastcgi_param GATEWAY_INTERFACE CGI/1.1;
1330
badefafbf7f3 add $nginx_version
Igor Sysoev <igor@sysoev.ru>
parents: 537
diff changeset
17 fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
537
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
18
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
19 fastcgi_param REMOTE_ADDR $remote_addr;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
20 fastcgi_param REMOTE_PORT $remote_port;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
21 fastcgi_param SERVER_ADDR $server_addr;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
22 fastcgi_param SERVER_PORT $server_port;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
23 fastcgi_param SERVER_NAME $server_name;
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
24
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
25 # PHP only, required if PHP was built with --enable-force-cgi-redirect
c9ad0d9c7d59 nginx-0.1.43-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
26 fastcgi_param REDIRECT_STATUS 200;