Mercurial > hg > nginx
changeset 813:a608349951cf
fix alias without trailing slash
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 25 Oct 2006 15:36:11 +0000 |
parents | 3298810a0198 |
children | 760ed037a5a4 |
files | src/http/modules/ngx_http_index_module.c |
diffstat | 1 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/modules/ngx_http_index_module.c +++ b/src/http/modules/ngx_http_index_module.c @@ -315,10 +315,14 @@ ngx_http_index_handler(ngx_http_request_ static ngx_int_t ngx_http_index_test_dir(ngx_http_request_t *r, ngx_http_index_ctx_t *ctx) { + u_char c; + ngx_uint_t i; ngx_err_t err; ngx_file_info_t fi; - *(ctx->index.data - 1) = '\0'; + c = *(ctx->index.data - 1); + i = (c == '/') ? 1 : 0; + *(ctx->index.data - i) = '\0'; ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, "http index check dir: \"%s\"", ctx->path.data); @@ -328,7 +332,7 @@ ngx_http_index_test_dir(ngx_http_request err = ngx_errno; if (err == NGX_ENOENT) { - *(ctx->index.data - 1) = '/'; + *(ctx->index.data - i) = c; return ngx_http_index_error(r, ctx, err); } @@ -338,7 +342,7 @@ ngx_http_index_test_dir(ngx_http_request return NGX_HTTP_INTERNAL_SERVER_ERROR; } - *(ctx->index.data - 1) = '/'; + *(ctx->index.data - i) = c; if (ngx_is_dir(&fi)) { return NGX_OK;