ПРОЕКТЫ 


  АРХИВ 


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]

REQUEST_URI в проксируемом запросе


  • To: nginx-ru@xxxxxxxxx
  • Subject: REQUEST_URI в проксируемом запросе
  • From: Alex Belyansky <alex.barut@xxxxxxxxx>
  • Date: Mon, 09 Jul 2012 15:34:16 +0400
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; bh=67tKAKG1DHaZEbhNqraBuNevyRqnQDdGwLKC7iXa7q4=; b=j5NXwEloSprSTcmtby0rh1HMklPauOOF6i6BVsO4PB+HnNxDQ5aDR6913lygmKE+xT M46oYOBe8XeKX8FEqSw7O4IZnIpYtVA6gSlsEpMrU900LH6nITXiEBpcdijQm8XfKELm GmW1R39tPmjPKMFlp4Nbp8lw4Bl54GDcEFPMW/+8hzlUIwEs0eAOweV8coM6bSGfBD/B SErBc9j3Iz07pN4cVjqUPEmoQ9rwoznHYzA8jhgJTdm314rvsjoSMGciv7JOs3cnkZbT 602Qu82vUt2qYeuX1nhRCG1bdvEdpNEwXzkb2S/AuEdr6z4/q5HPmK2qWyGQ++ug6b6l MCxg==

Добрый день!

Хотелось бы поинтересоваться по поводу поведения Nginx, при запросе корневой директории.

Конфиг виртуального хоста примерно такой:
server {
    listen 127.0.0.1:80;
    server_name  test.ru ;
    root /home/test/www/test.ru;
    index index.php index.html;

    location ~* \.php {
        proxy_pass         http://upstream;
    }

    location / {
        try_files   $uri    $uri/   @upstream;
        error_page  404 = @upstream;
        error_page  403 = @upstream;
    }

    location @upstream {
       proxy_pass  http://upstream;
    }

}

Версия Nginx:

1-ый сервер
nginx: nginx version: nginx/1.0.0
nginx: built by gcc 4.2.1 20070719  [FreeBSD]
nginx: TLS SNI support enabled

2-ой сервер
nginx version: nginx/1.3.2
built by gcc 4.4.5 (Debian 4.4.5-8)
TLS SNI support enabled

Посылаем запрос к серверу:

GET / HTTP/1.1

Так вот суть вопроса в чем. Для первого сервера значение в PHP:
_SERVER["REQUEST_URI"] = /

А для второго:
_SERVER["REQUEST_URI"] = /index.php

Т.е. по сути получается что на первом сервере пересылается исходный запрос на backend, а на втором уже идет запрос к '/index.php'. На втором сервере пришлось убрать index.php из директивы index, чтобы на backend приходил исходный запрос.

Меня интересует нормально ли такое поведение или это какой-то глюк, или мои кривые руки?

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.