ПРОЕКТЫ 


  АРХИВ 


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]

Re[3]: nginx делает нежелате льное изменение URI



On Mon, 21 Feb 2005, Igor Sysoev wrote:

On Mon, 21 Feb 2005 opennet@xxxxxx wrote:

Вот есть такой кусок конфига:

location / {
proxy_pass  http://192.168.112.33/;
proxy_preserve_host        on;
proxy_set_x_real_ip        on;
}

debug лог:
2005/02/21 14:30:25 [debug] 5499#0: *2 http request line:
"GET /section/%23.html HTTP/1.1"
2005/02/21 14:30:25 [debug] 5499#0: *2 http uri: "/section/#.html"

Апачу передается такой запрос:
"GET /section/#.html HTTP/1.0

Как нибудь можно сделать, чтобы Апачу передавалось %23 а не # ?

Насколько я понимаю, браузер передавать "#" не будет, так как это anchor.
А что Апач-то выдаёт в случае "/#.html" ? Ему-то всё равно anchor или нет.
Так ведь из debug лога видно, что браузер передает ИМЕННО %23 и не #.
А nginx у апача запрашивает уже anchor.

Это понятно. Поменять легко.

Вот патч:
--------------------
--- src/core/ngx_string.c     Wed Feb  2 19:24:50 2005
+++ src/core/ngx_string.c     Mon Feb 21 17:11:08 2005
@@ -628,7 +662,7 @@
         { 0xffffffff, /* 1111 1111 1111 1111  1111 1111 1111 1111 */

                       /* ?>=< ;:98 7654 3210  /.-, +*)( '&%$ #"!  */
-          0x80000021, /* 1000 0000 0000 0000  0000 0000 0010 0001 */
+          0x80000029, /* 1000 0000 0000 0000  0000 0000 0010 1001 */

                       /* _^]\ [ZYX WVUT SRQP  ONML KJIH GFED CBA@ */
           0x00000000, /* 0000 0000 0000 0000  0000 0000 0000 0000 */
@@ -647,7 +681,7 @@
         { 0xffffffff, /* 1111 1111 1111 1111  1111 1111 1111 1111 */

                       /* ?>=< ;:98 7654 3210  /.-, +*)( '&%$ #"!  */
-          0x80000821, /* 1000 0000 0000 0000  0000 1000 0010 0001 */
+          0x80000829, /* 1000 0000 0000 0000  0000 1000 0010 1001 */

                       /* _^]\ [ZYX WVUT SRQP  ONML KJIH GFED CBA@ */
           0x00000000, /* 0000 0000 0000 0000  0000 0000 0000 0000 */
--------------------


Игорь Сысоев
http://sysoev.ru




 




Copyright © Lexa Software, 1996-2009.