comparison src/http/ngx_http_request.c @ 92:45945fa8b8ba NGINX_0_2_0

nginx 0.2.0 *) The pid-file names used during online upgrade was changed and now is not required a manual rename operation. The old master process adds the ".oldbin" suffix to its pid-file and executes a new binary file. The new master process creates usual pid-file without the ".newbin" suffix. If the master process exits, then old master process renames back its pid-file with the ".oldbin" suffix to the pid-file without suffix. *) Change: the "worker_connections" directive, new name of the "connections" directive; now the directive specifies maximum number of connections, but not maximum socket descriptor number. *) Feature: SSL supports the session cache inside one worker process. *) Feature: the "satisfy_any" directive. *) Change: the ngx_http_access_module and ngx_http_auth_basic_module do not run for subrequests. *) Feature: the "worker_rlimit_nofile" and "worker_rlimit_sigpending" directives. *) Bugfix: if all backend using in load-balancing failed after one error, then nginx did not try do connect to them during 60 seconds. *) Bugfix: in IMAP/POP3 command argument parsing. Thanks to Rob Mueller. *) Bugfix: errors while using SSL in IMAP/POP3 proxy. *) Bugfix: errors while using SSI and gzipping. *) Bugfix: the "Expires" and "Cache-Control" header lines were omitted from the 304 responses. Thanks to Alexandr Kukushkin.
author Igor Sysoev <http://sysoev.ru>
date Fri, 23 Sep 2005 00:00:00 +0400
parents e916a291e9aa
children ca4f70b3ccc6
comparison
equal deleted inserted replaced
91:c3eee83ea942 92:45945fa8b8ba
357 357
358 sscf = ngx_http_get_module_srv_conf(r, ngx_http_ssl_module); 358 sscf = ngx_http_get_module_srv_conf(r, ngx_http_ssl_module);
359 if (sscf->enable) { 359 if (sscf->enable) {
360 360
361 if (c->ssl == NULL) { 361 if (c->ssl == NULL) {
362 if (ngx_ssl_create_session(sscf->ssl_ctx, c, NGX_SSL_BUFFER) 362 if (ngx_ssl_create_connection(sscf->ssl_ctx, c, NGX_SSL_BUFFER)
363 == NGX_ERROR) 363 == NGX_ERROR)
364 { 364 {
365 ngx_http_close_connection(c); 365 ngx_http_close_connection(c);
366 return; 366 return;
367 } 367 }
1730 rc = ngx_http_output_filter(r, NULL); 1730 rc = ngx_http_output_filter(r, NULL);
1731 1731
1732 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, 1732 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
1733 "http postponed output filter: %d", rc); 1733 "http postponed output filter: %d", rc);
1734 1734
1735 if (rc == NGX_AGAIN) {
1736 return rc;
1737 }
1738
1739 /* 1735 /*
1740 * we treat NGX_ERROR as NGX_OK, because we need to complete 1736 * we treat NGX_ERROR as NGX_OK, because we need to complete
1741 * all postponed requests 1737 * all postponed requests
1742 */ 1738 */
1743 1739
1744 pr = r->postponed; 1740 pr = r->postponed;
1745 1741
1746 if (pr == NULL) { 1742 if (pr == NULL) {
1743
1744 if (rc == NGX_AGAIN) {
1745 return NGX_AGAIN;
1746 }
1747
1747 return NGX_OK; 1748 return NGX_OK;
1748 } 1749 }
1749 } 1750 }
1750 1751
1751 r = pr->request; 1752 r = pr->request;