summaryrefslogtreecommitdiffhomepage
path: root/src/http/modules/ngx_http_scgi_module.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2012-02-05Merge of r4406, r4413: copyrights updated.Maxim Dounin1-0/+1
2012-02-05Merge of r4402:Maxim Dounin1-0/+4
Fixed proxy_cache_use_stale in "no live upstreams" case.
2012-02-05Merge of r4372, r4373, r4374:Maxim Dounin1-13/+3
SCGI fixes: *) Fixed incorrect use of r->http_version in scgi module. The r->http_version is a version of client's request, and modules must not set it unless they are really willing to downgrade protocol version used for a response (i.e. to HTTP/0.9 if no response headers are available). In neither case r->http_version may be upgraded. The former code downgraded response from HTTP/1.1 to HTTP/1.0 for no reason, causing various problems (see ticket #66). It was also possible that HTTP/0.9 requests were upgraded to HTTP/1.0. *) Removed duplicate function declaration. *) Removed error if there is no Status header. The SCGI specification doesn't specify format of the response, and assuming CGI specs should be used there is no reason to complain. RFC 3875 explicitly states that "A Status header field is optional, and status 200 'OK' is assumed if it is omitted".
2011-12-14Merge of r4295:Maxim Dounin1-1/+3
Fixed incorrect counting the length of headers in a SCGI request.
2011-12-14Merge of r4275, r4276, r4278, r4279:Maxim Dounin1-56/+96
Fixes for proxy_set_header, fastcgi/scgi/uwsgi_param inheritance: *) Fixed proxy_set_header inheritance with proxy_cache (ticket #45). Headers cleared with cache enabled (If-Modified-Since etc.) might be cleared in unrelated servers/locations without proxy_cache enabled if proxy_cache was used in some server/location. Example config which triggered the problem: proxy_set_header X-Test "test"; server { location /1 { proxy_cache name; proxy_pass ... } } server { location /2 { proxy_pass ... } } Another one: server { proxy_cache name; location /1 { proxy_pass ... } location /2 { proxy_cache off; proxy_pass ... } } In both cases If-Modified-Since header wasn't sent to backend in location /2. Fix is to not modify conf->headers_source, but instead merge user-supplied headers from conf->headers_source and default headers (either cache or not) into separate headers_merged array. *) Fixed proxy_set_header inheritance with proxy_set_body. *) Separate functions to merge fastcgi/scgi/uwsgi params. No functional changes. *) Fixed fastcgi/scgi/uwsgi_param inheritance. 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-01Merging r4158:Igor Sysoev1-1/+10
Added uwsgi_buffering and scgi_buffering directives. Patch by Peter Smit.
2011-08-29Merge of r4016:Igor Sysoev1-1/+9
Fix ignored headers handling in fastcgi/scgi/uwsgi. The bug had appeared in r3561 (fastcgi), r3638 (scgi), r3567 (uwsgi).
2011-08-29Merge of r3964, r3977, r3978:Igor Sysoev1-0/+2
Proxy related fixes: *) finalizing with rc == 0 in unbuffered proxy mode caused nginx to wait for another send_timeout before actually closing client's connection if client timed out while still talking to upstream server *) update r3945 with more descriptive error message *) test length of proxy_pass with variables; patch by Lanshun Zhou
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
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-19proxy_cache_pass, fastcgi_cache_bypass, uwsgi_cache_bypass, scgi_cache_bypassIgor Sysoev1-0/+11
2010-07-14fix scgi_no_cache and uwsgi_no_cache initializationIgor Sysoev1-0/+1
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-02update the previous commitIgor Sysoev1-9/+0
2010-07-02use shared ngx_http_upstream_ignore_headers_masks[]Igor Sysoev1-1/+1
2010-06-18ngx_http_scgi_moduleIgor Sysoev1-0/+1674