summaryrefslogtreecommitdiffhomepage
path: root/src/http/modules/ngx_http_fastcgi_module.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2013-02-01FastCGI: proper handling of split fastcgi end request.Maxim Dounin1-7/+37
If fastcgi end request record was split between several network packets, with fastcgi_keep_conn it was possible that connection was saved in incorrect state (e.g. with padding bytes not yet read).
2013-02-01FastCGI: unconditional state transitions.Maxim Dounin1-49/+8
Checks for f->padding before state transitions make code hard to follow, remove them and make sure we always do another loop iteration after f->state is set to ngx_http_fastcgi_st_padding.
2013-02-01FastCGI: fixed wrong connection close with fastcgi_keep_conn.Maxim Dounin1-4/+0
With fastcgi_keep_conn it was possible that connection was closed after FCGI_STDERR record with zero padding and without any further data read yet. This happended as f->state was set to ngx_http_fastcgi_st_padding and then "break" happened, resulting in p->length being set to f->padding, i.e. 0 (which in turn resulted in connection close). Fix is to make sure we continue the loop after f->state is set.
2013-01-16Fixed and improved the "*_bind" directives of proxying modules.Ruslan Ermilov1-0/+5
The "proxy_bind", "fastcgi_bind", "uwsgi_bind", "scgi_bind" and "memcached_bind" directives are now inherited; inherited value can be reset by the "off" parameter. Duplicate directives are now detected. Parameter value can now contain variables.
2012-12-06Allow the complex value to be defined as an empty string.Ruslan Ermilov1-1/+1
This makes conversion from strings to complex values possible without the loss of functionality.
2012-08-08Added three missing checks for NULL after ngx_array_push() calls.Valentin Bartenev1-0/+3
Found by Coverity.
2012-05-11Fastcgi: fixed padding handling on fixed-size records.Maxim Dounin1-4/+23
Padding was incorrectly ignored on end request, empty stdout and stderr fastcgi records. This resulted in protocol desynchronization if fastcgi application used these records with padding for some reason. Reported by Ilia Vinokurov.
2012-05-11Added r->state reset on fastcgi/scgi/uwsgi request start.Maxim Dounin1-0/+3
Failing to do so results in problems if 400 or 414 requests are redirected to fastcgi/scgi/uwsgi upstream, as well as after invalid headers got from upstream. This was already fixed for proxy in r3478, but fastcgi (the only affected protocol at that time) was missed. Reported by Matthieu Tourne.
2012-04-12Fixed grammar in error messages.Ruslan Ermilov1-7/+7
2012-03-15Fixed incorrect ngx_cpystrn() usage in ngx_http_*_process_header().Maxim Dounin1-4/+4
This resulted in a disclosure of previously freed memory if upstream server returned specially crafted response, potentially exposing sensitive information. Reported by Matthew Daley.
2012-03-05Whitespace fixes.Maxim Dounin1-1/+2
2012-01-18Copyright updated.Maxim Konovalov1-0/+1
2012-01-16Fixed proxy_cache_use_stale in "no live upstreams" case.Maxim Dounin1-0/+4
2011-12-26Cache lock support for fastcgi, scgi, uwsgi.Maxim Dounin1-0/+22
2011-12-09FastCGI: added "if_not_empty" flag support to the "fastcgi_param" directive.Valentin Bartenev1-7/+44
2011-11-14Fixed fastcgi/scgi/uwsgi_param inheritance.Maxim Dounin1-30/+58
The following problems were fixed: 1. Directive fastcgi_cache affected headers sent to backends in unrelated servers / locations (see ticket #45). 2. If-Unmodified-Since, If-Match and If-Range headers were sent to backends if fastcgi_cache was used. 3. Cache-related headers were sent to backends if there were no fastcgi_param directives and fastcgi_cache was used at server level.
2011-11-14Separate functions to merge fastcgi/scgi/uwsgi params.Maxim Dounin1-30/+42
No functional changes.
2011-11-14Fixed NGX_CONF_TAKE1/NGX_CONF_FLAG misuse.Sergey Budnevitch1-1/+1
2011-09-20Fixed loss of chain links in fastcgi module.Maxim Dounin1-2/+4
2011-09-15Keepalive support in fastcgi.Maxim Dounin1-7/+69
By default follow the old behaviour, i.e. FASTCGI_KEEP_CONN flag isn't set in request and application is responsible for closing connection once request is done. To keep connections alive fastcgi_keep_conn must be activated.
2011-08-19Fix ignored headers handling in fastcgi/scgi/uwsgi.Maxim Dounin1-1/+9
The bug had appeared in r3561 (fastcgi), r3638 (scgi), r3567 (uwsgi).
2011-07-29update r3945 with more descriptive error messageIgor Sysoev1-0/+2
2011-04-04fix case when a host in fastcgi_pass, scgi_pass, and uwsgi_passIgor Sysoev1-6/+1
is given by expression and refers to a defined upstream
2011-01-20fix large stderr handling without http cacheIgor Sysoev1-1/+2
patch by Maxim Dounin the bug has been introduced in r3461
2010-08-03fix fastcgi_split_path_info, if URI was not fully capturedIgor Sysoev1-2/+2
2010-08-03inherit proxy_pass, fastcgi_pass, uwsgi_pass, scgi_pass insideIgor Sysoev1-0/+8
a limit_except block if no handler was defined for the block
2010-08-02fix directive typeIgor Sysoev1-4/+4
2010-07-19add warnings for proxy_no_cache and fastcgi_no_cacheIgor Sysoev1-0/+6
2010-07-19proxy_cache_pass, fastcgi_cache_bypass, uwsgi_cache_bypass, scgi_cache_bypassIgor Sysoev1-0/+11
2010-07-14use ngx_http_test_predicates(), ngx_http_set_predicate_slot()Igor Sysoev1-1/+1
delete ngx_http_cache(), ngx_http_no_cache_set_slot()
2010-07-02do not use a cache headers set to hideIgor Sysoev1-25/+1
2010-07-02use shared ngx_http_upstream_ignore_headers_masks[]Igor Sysoev1-10/+1
2010-06-08change variable namesIgor Sysoev1-19/+21
2010-06-04do not pass if-... headers for cacheable fastcgi responsesIgor Sysoev1-0/+63
2010-06-03rename variable to conform to the next commitIgor Sysoev1-5/+5
2010-06-03allow fastcgi_param to override client headers using HTTP_ parametersIgor Sysoev1-7/+110
2010-06-03add client request headers debug logging in fastcgiIgor Sysoev1-16/+20
2010-06-02remove the special static fastcgi_param values processing,Igor Sysoev1-70/+26
because it is anyway very seldom case
2010-05-24proxy_no_cache and fastcgi_no_cacheIgor Sysoev1-0/+11
2010-05-20delete warnings of proxy_upstream_max_fails, proxy_upstream_fail_timeout,Igor Sysoev1-45/+0
fastcgi_upstream_max_fails, fastcgi_upstream_fail_timeout, memcached_upstream_max_fails, and memcached_upstream_fail_timeout directives obsolete since 0.5.0 version
2010-05-14ngx_str_set() and ngx_str_null()Igor Sysoev1-11/+5
2010-04-06fix building without HTTP cache, the bug had been introduced in r3461Igor Sysoev1-3/+3
2010-03-10fix segfault if there was non cached large FastCGI stderr output before header,Igor Sysoev1-1/+1
the bug had been introduced in r3461
2010-03-03fix cached FastCGI response with large stderr output before headerIgor Sysoev1-3/+54
2009-12-23fix typoIgor Sysoev1-1/+1
2009-11-16regex named capturesIgor Sysoev1-34/+27
2009-11-02proxy_bind, fastcgi_bind, and memcached_bindIgor Sysoev1-0/+7
2009-10-07hide cacheable Set-Cookie and P3P FastCGI response headersIgor Sysoev1-3/+29
2009-08-12refactor fastcgi stderr handlingIgor Sysoev1-26/+23
2009-08-04fix a garbage in a split fastcgi headerIgor Sysoev1-2/+3