Mercurial > hg > nginx-ranges
diff src/http/modules/ngx_http_index_module.c @ 397:05981f639d21 NGINX_0_7_9
nginx 0.7.9
*) Change: now ngx_http_charset_module works by default with following
MIME types: text/html, text/css, text/xml, text/plain,
text/vnd.wap.wml, application/x-javascript, and application/rss+xml.
*) Feature: the "charset_types" and "addition_types" directives.
*) Feature: now the "gzip_types", "ssi_types", and "sub_filter_types"
directives use hash.
*) Feature: the ngx_cpp_test_module.
*) Feature: the "expires" directive supports daily time.
*) Feature: the ngx_http_xslt_module improvements and bug fixing.
Thanks to Denis F. Latypoff and Maxim Dounin.
*) Bugfix: the "log_not_found" directive did not work for index files
tests.
*) Bugfix: HTTPS connections might hang, if kqueue, epoll, rtsig, or
eventport methods were used; the bug had appeared in 0.7.7.
*) Bugfix: if the "server_name", "valid_referers", and "map" directives
used an "*.domain.tld" wildcard and exact name "domain.tld" was not
set, then the exact name was matched by the wildcard; the bugs had
appeared in 0.3.18.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Tue, 12 Aug 2008 00:00:00 +0400 |
parents | 0b6053502c55 |
children | 9d81578d04bb |
line wrap: on
line diff
--- a/src/http/modules/ngx_http_index_module.c +++ b/src/http/modules/ngx_http_index_module.c @@ -27,8 +27,8 @@ typedef struct { static ngx_int_t ngx_http_index_test_dir(ngx_http_request_t *r, ngx_http_core_loc_conf_t *clcf, u_char *path, u_char *last); -static ngx_int_t ngx_http_index_error(ngx_http_request_t *r, u_char *file, - ngx_err_t err); +static ngx_int_t ngx_http_index_error(ngx_http_request_t *r, + ngx_http_core_loc_conf_t *clcf, u_char *file, ngx_err_t err); static ngx_int_t ngx_http_index_init(ngx_conf_t *cf); static void *ngx_http_index_create_loc_conf(ngx_conf_t *cf); @@ -227,7 +227,7 @@ ngx_http_index_handler(ngx_http_request_ } if (of.err == NGX_ENOTDIR || of.err == NGX_EACCES) { - return ngx_http_index_error(r, path.data, of.err); + return ngx_http_index_error(r, clcf, path.data, of.err); } if (!dir_tested) { @@ -306,7 +306,7 @@ ngx_http_index_test_dir(ngx_http_request if (of.err == NGX_ENOENT) { *last = c; - return ngx_http_index_error(r, dir.data, NGX_ENOENT); + return ngx_http_index_error(r, clcf, dir.data, NGX_ENOENT); } ngx_log_error(NGX_LOG_CRIT, r->connection->log, of.err, @@ -330,7 +330,8 @@ ngx_http_index_test_dir(ngx_http_request static ngx_int_t -ngx_http_index_error(ngx_http_request_t *r, u_char *file, ngx_err_t err) +ngx_http_index_error(ngx_http_request_t *r, ngx_http_core_loc_conf_t *clcf, + u_char *file, ngx_err_t err) { if (err == NGX_EACCES) { ngx_log_error(NGX_LOG_ERR, r->connection->log, err, @@ -339,8 +340,10 @@ ngx_http_index_error(ngx_http_request_t return NGX_HTTP_FORBIDDEN; } - ngx_log_error(NGX_LOG_ERR, r->connection->log, err, - "\"%s\" is not found", file); + if (clcf->log_not_found) { + ngx_log_error(NGX_LOG_ERR, r->connection->log, err, + "\"%s\" is not found", file); + } return NGX_HTTP_NOT_FOUND; }