ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Проблема с index index.html и rewrite


  • To: nginx-ru@xxxxxxxxx
  • Subject: Проблема с index index.html и rewrite
  • From: "Владислав Комиссаров" <vk@xxxxxxxxxx>
  • Date: Fri, 15 Aug 2008 16:09:52 +0400
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender :to:subject:mime-version:content-type:x-google-sender-auth; bh=nuUMb5GWBhAch3Fmjw44ZbQF+3GNlqfej4ljFLv5rcY=; b=DeZtLrWmpdscGRZUieDopRWsiYJOFq83T8UcjYfQSY4CIVu4o6uIR/w/AikeqXDTcw +AjaYwTx5Oq+Gl/dl9GcrZQUDKMp07BiZJf8nkedpXchOXXZqed+qjyiBcW9Ll0Lm20Y nTBmJPDAKiLTu33pQfGzsmH/kPsNflNVFvln8=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:mime-version:content-type :x-google-sender-auth; b=SYiLf/eGQm8Gd93Be6i4Nle2yS/9exovE7FYbMUqRAJPMrQ13rFnyqA1CTnVGrnxyU ikBrJiIEKgHt211tR9lcVw2o3M5H49DwHhPOnwE28e6zQis/ItyKv4B2aQ/nvSku3vNJ PAxvYNF2k89qK+TMh/hzYCzjs6ie25cxTXQaM=

Ситуация следующая.

server {
...
  set $srv_root  /var/www/domain.ru/htdocs;
...

  location / {
    root $srv_root;
    index index.html;

    if (!-f $request_filename){
        rewrite (.*) /index2.html;
    }
  }

  location /public/ {
      root $srv_root;
  }
}

При таком конфиге, я ожидаю что при запросе http://www.domain.ru/ будет произведен внутренний редирект на /index.html, который не попадет в !-f $request_filename и сервер отдаст клиенту /var/www/domain.ru/htdocs/index.html, но вместо этого клиенту отдается index2.html

Есть предположение, что при внутреннем редиректе на /index.html в $request_filename остается "/".

Если запросить http://www.domain.ru/index.html - все отдается верно.

/usr/local/nginx/sbin/nginx -V
nginx version: nginx/0.7.10
built by gcc 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
configure arguments: --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access_log --error-log-path=/var/log/nginx/error_log --pid-path=/var/run/nginx.pid --http-client-body-temp-path=/var/tmp/nginx/client --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --with-pcre=../pcre-7.7 --with-zlib=../zlib-1.2.3 --without-select_module --without-http_ssi_module --without-http_userid_module --without-http_auth_basic_module --without-http_geo_module --without-http_map_module --without-http_referer_module --without-http_memcached_module --without-http_empty_gif_module --without-http_browser_module --without-http_upstream_ip_hash_module --without-mail_pop3_module --without-mail_imap_module --without-mail_smtp_module --with-http_stub_status_module


 




Copyright © Lexa Software, 1996-2009.