Re: проблема с rewrite

Иван Мишин simplebox66 at gmail.com
Wed Jun 24 14:45:41 UTC 2015


прокси нет. 598 , с помощью него я попадаю в именованный локейшн
приведенный выше.
Приведу тогда полный конфиг для ясности. А так же дамп с обоих сторон



24 июня 2015 г., 16:28 пользователь Dmitry Ivanov <nginx-ru at sadok.spb.ru>
написал:

> Здравствуйте, Иван.
>
> Вы писали 24 июня 2015 г., 15:51:38:
>
> >  Дамп снимал. Ничего там интересного не увидел. На всякий случай
> > прикрепляю результаты дампа к письму
>
> Хм. На DELETE прилетает от nginx HTTP/1.1 598
>
> https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#598
>
> Может у вас там (как пишет вики) прокся некая чудит?
>
> И повторюсь: дамп нужен с обоих сторон.
>
> --
> С уважением,
>  Dmitry                       nginx-ru at sadok.spb.ru
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20150624/90469f50/attachment-0001.html>
-------------- next part --------------
set $webdav_root "/etc/nginx/davdir";
location ^~ /Family {
        root            $webdav_root;
        error_page      599 = @propfind_handler;
        error_page      598 = @delete_handler;
        chunked_transfer_encoding       on;
        open_file_cache off;
        client_max_body_size            50m;


        if ($request_method = PROPFIND) {
                return 599;
        }
        if ($request_method = PROPPATCH) { 
                add_header      Content-Type 'text/xml';
                return          207 '<?xml version="1.0"?><a:multistatus xmlns:a="DAV:"><a:response><a:propstat><a:status>HTTP/1.1 200 OK</a:status></a:propstat></a:response></a:multistatus>';
        }
        if ($request_method = MKCOL) { 
                rewrite ^(.*[^/])$ $1/;
        }
        if ($request_method = DELETE) {
                return 598;

        }

        dav_methods     PUT MKCOL COPY MOVE; 
        dav_ext_methods OPTIONS;
        create_full_put_path    on;
        min_delete_depth        0;
        dav_access      user:rw group:rw all:rw;

        autoindex       on;
        autoindex_exact_size    on;
        autoindex_localtime     on;
}
location @propfind_handler {
        internal;

        open_file_cache off;
        if (!-e $webdav_root/$uri) { 
                return 404;
        }
        root            $webdav_root;
        dav_ext_methods PROPFIND;
}
location @delete_handler {
        internal;

        open_file_cache off;
        if (-d $webdav_root/$uri) { 
        rewrite ^(.*[^/])$ $1/;
        }
        root            $webdav_root;
        dav_methods     DELETE;
}
location / {
        if ($request_method = OPTIONS) {
                add_header      Allow 'OPTIONS, GET, HEAD, POST, PUT, MKCOL, DELETE, PROPFIND, PROPPATCH';
                add_header      DAV '1, 2';
                return 200;
        }
}

}
-------------- next part --------------
192.168.200.81.49733 > 192.168.200.92.80: Flags [P.], cksum 0xaed4 (correct), seq 1:142, ack 1, win 2053, length 141
E...1i at ........Q...\.E.PN."G.|((P.......DELETE /Family/test HTTP/1.1
Connection: Keep-Alive
User-Agent: Microsoft-WebDAV-MiniRedir/6.3.9600
translate: f
Host: 192.168.200.92


17:42:49.932001 IP (tos 0x0, ttl 64, id 26906, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.92.80 > 192.168.200.81.49733: Flags [.], cksum 0x916a (correct), seq 1, ack 142, win 123, length 0
E..(i. at .@......\...Q.P.E.|((N.".P..{.j..
17:42:49.932125 IP (tos 0x2,ECT(0), ttl 64, id 26907, offset 0, flags [DF], proto TCP (6), length 176)
    192.168.200.92.80 > 192.168.200.81.49733: Flags [P.], cksum 0x12a2 (incorrect -> 0xe346), seq 1:137, ack 142, win 123, length 136
E...i. at .@..+...\...Q.P.E.|((N.".P..{....HTTP/1.1 598
Server: nginx
Date: Sat, 25 Jul 2015 14:42:49 GMT
Content-Length: 0
Connection: keep-alive
Keep-Alive: timeout=30


17:42:49.935035 IP (tos 0x0, ttl 128, id 12651, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.81.49732 > 192.168.200.92.80: Flags [.], cksum 0xc4fe (correct), seq 173, ack 771, win 2050, length 0
E..(1k at ....e...Q...\.D.P..qZ..L.P.............
17:42:49.938587 IP (tos 0x0, ttl 128, id 12652, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.81.49733 > 192.168.200.92.80: Flags [.], cksum 0x8959 (correct), seq 142, ack 137, win 2052, length 0
E..(1l at ....d...Q...\.E.PN."..|(.P....Y........
17:42:49.955169 IP (tos 0x2,ECT(0), ttl 128, id 12654, offset 0, flags [DF], proto TCP (6), length 52)
    192.168.200.81.49734 > 192.168.200.92.80: Flags [SEW], cksum 0x1901 (correct), seq 1684208726, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
E..41n at ....T...Q...\.F.Pdb.V...... .................
17:42:49.955214 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 52)
    192.168.200.92.80 > 192.168.200.81.49734: Flags [S.E], cksum 0x88cb (correct), seq 2426005251, ack 1684208727, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 7], length 0
E..4.. at .@.(....\...Q.P.F....db.W.R9.................
17:42:49.955345 IP (tos 0x0, ttl 128, id 12655, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.81.49734 > 192.168.200.92.80: Flags [.], cksum 0xfae0 (correct), seq 1, ack 1, win 2053, length 0
E..(1o at ....a...Q...\.F.Pdb.W....P.............
17:42:49.955465 IP (tos 0x2,ECT(0), ttl 128, id 12656, offset 0, flags [DF], proto TCP (6), length 219)
    192.168.200.81.49734 > 192.168.200.92.80: Flags [P.], cksum 0x2b12 (correct), seq 1:180, ack 1, win 2053, length 179
E...1p at ........Q...\.F.Pdb.W....P...+...PROPFIND /Family/desktop.ini HTTP/1.1
Connection: Keep-Alive
User-Agent: Microsoft-WebDAV-MiniRedir/6.3.9600
Depth: 0
translate: f
Content-Length: 0
Host: 192.168.200.92


17:42:49.955478 IP (tos 0x0, ttl 64, id 42573, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.92.80 > 192.168.200.81.49734: Flags [.], cksum 0x01b8 (correct), seq 1, ack 180, win 123, length 0
E..(.M at .@......\...Q.P.F....db.
P..{....
17:42:49.955599 IP (tos 0x2,ECT(0), ttl 64, id 42574, offset 0, flags [DF], proto TCP (6), length 374)
    192.168.200.92.80 > 192.168.200.81.49734: Flags [P.], cksum 0x1368 (incorrect -> 0xa4aa), seq 1:335, ack 180, win 123, length 334
E..v.N at .@..2...\...Q.P.F....db.
P..{.h..HTTP/1.1 404 Not Found
Server: nginx
Date: Sat, 25 Jul 2015 14:42:49 GMT
Content-Type: text/html
Content-Length: 162
Connection: keep-alive
Keep-Alive: timeout=30

<html>
<head><title>404 Not Found</title></head>
<body bgcolor="white">
<center><h1>404 Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html>

17:42:49.966292 IP (tos 0x0, ttl 128, id 12657, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.81.49734 > 192.168.200.92.80: Flags [.], cksum 0xf8e1 (correct), seq 180, ack 335, win 2051, length 0
E..(1q at ...._...Q...\.F.Pdb.
...RP.............
17:42:53.035780 IP (tos 0x0, ttl 64, id 56557, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.92.80 > 192.168.200.81.49722: Flags [F.], cksum 0xad06 (correct), seq 2414414714, ack 931683036, win 123, length 0
E..(.. at .@.K....\...Q.P.:...z7.Z.P..{....
17:42:53.036077 IP (tos 0x0, ttl 128, id 12700, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.81.49722 > 192.168.200.92.80: Flags [.], cksum 0xa57d (correct), seq 1, ack 1, win 2052, length 0
E..(1. at ....4...Q...\.:.P7.Z....{P....}........
17:42:53.036142 IP (tos 0x0, ttl 128, id 12701, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.81.49722 > 192.168.200.92.80: Flags [F.], cksum 0xa57c (correct), seq 1, ack 1, win 2052, length 0
E..(1. at ....3...Q...\.:.P7.Z....{P....|........
17:42:53.036157 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.92.80 > 192.168.200.81.49722: Flags [.], cksum 0xad05 (correct), seq 1, ack 2, win 123, length 0
E..(.. at .@.(....\...Q.P.:...{7.Z.P..{....
17:42:54.535807 IP (tos 0x0, ttl 64, id 14063, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.92.80 > 192.168.200.81.49723: Flags [F.], cksum 0x25f3 (correct), seq 810019316, ack 2634218907, win 123, length 0
E..(6. at .@......\...Q.P.;0G......P..{%...
17:42:54.535875 IP (tos 0x0, ttl 64, id 6550, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.92.80 > 192.168.200.81.49724: Flags [F.], cksum 0x0dad (correct), seq 1605028135, ack 1598375176, win 123, length 0
...(.. at .@..;...\...Q.P.<_..'_EE.P..{
17:42:54.536172 IP (tos 0x0, ttl 128, id 12706, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.200.81.49723 > 192.168.200.92.80: Flags [.], cksum 0x1e6b (correct), seq 1, ack 1, win 2051, length 0
-------------- next part --------------
17:39:39.372492 IP (tos 0x2,ECT(0), ttl 128, id 12649, offset 0, flags [DF], pro
to: TCP (6), length: 181, bad cksum 0 (->b6d8)!) 192.168.200.81.49733 > 192.168.
200.92.80: P 1:142(141) ack 1 win 2053
E...1i at ........Q...\.E.PN."G.|((P.......DELETE /Family/test HTTP/1.1
Connection:
17:39:39.372605 IP (tos 0x0, ttl  64, id 26906, offset 0, flags [DF], proto: TCP
 (6), length: 40) 192.168.200.92.80 > 192.168.200.81.49733: ., cksum 0x916a (cor
rect), 1:1(0) ack 142 win 123
E..(i. at .@......\...Q.P.E.|((N.".P..{.j........
17:39:39.372741 IP (tos 0x2,ECT(0), ttl  64, id 26907, offset 0, flags [DF], pro
to: TCP (6), length: 176) 192.168.200.92.80 > 192.168.200.81.49733: P 1:137(136)
 ack 142 win 123
E...i. at .@..+...\...Q.P.E.|((N.".P..{.F..HTTP/1.1 598
Server: nginx
Date: Sat, 2
17:39:39.375547 IP (tos 0x0, ttl 128, id 12651, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b765)!) 192.168.200.81.49732 > 192.168.200.92.8
0: ., cksum 0x121a (incorrect (-> 0xc4fe), 173:173(0) ack 771 win 2050
E..(1k at ........Q...\.D.P..qZ..L.P.......
17:39:39.375560 IP (tos 0x0, ttl 128, id 12652, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b764)!) 192.168.200.81.49733 > 192.168.200.92.8
0: ., cksum 0x121a (incorrect (-> 0x8959), 142:142(0) ack 137 win 2052
E..(1l at ........Q...\.E.PN."..|(.P.......
17:39:39.395658 IP (tos 0x2,ECT(0), ttl 128, id 12654, offset 0, flags [DF], pro
to: TCP (6), length: 52, bad cksum 0 (->b754)!) 192.168.200.81.49734 > 192.168.2
00.92.80: SWE, cksum 0x1226 (incorrect (-> 0x1901), 1684208726:1684208726(0) win
 8192 <mss 1460,nop,wscale 8,nop,nop,sackOK>
E..41n at ........Q...\.F.Pdb.V...... ..&..............
17:39:39.395833 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], proto: TCP (6)
, length: 52) 192.168.200.92.80 > 192.168.200.81.49734: SE, cksum 0x88cb (correc
t), 2426005251:2426005251(0) ack 1684208727 win 14600 <mss 1460,nop,nop,sackOK,n
op,wscale 7>
E..4.. at .@.(....\...Q.P.F....db.W.R9.................
17:39:39.395885 IP (tos 0x0, ttl 128, id 12655, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b761)!) 192.168.200.81.49734 > 192.168.200.92.8
0: ., cksum 0x121a (incorrect (-> 0xfae0), 1:1(0) ack 1 win 2053
E..(1o at ........Q...\.F.Pdb.W....P.......
17:39:39.395992 IP (tos 0x2,ECT(0), ttl 128, id 12656, offset 0, flags [DF], pro
to: TCP (6), length: 219, bad cksum 0 (->b6ab)!) 192.168.200.81.49734 > 192.168.
200.92.80: P 1:180(179) ack 1 win 2053
E...1p at ........Q...\.F.Pdb.W....P.......PROPFIND /Family/desktop.ini HTTP/1.1
Con
17:39:39.396087 IP (tos 0x0, ttl  64, id 42573, offset 0, flags [DF], proto: TCP
 (6), length: 40) 192.168.200.92.80 > 192.168.200.81.49734: ., cksum 0x01b8 (cor
rect), 1:1(0) ack 180 win 123
E..(.M at .@......\...Q.P.F....db.
P..{..........
17:39:39.396201 IP (tos 0x2,ECT(0), ttl  64, id 42574, offset 0, flags [DF], pro
to: TCP (6), length: 374) 192.168.200.92.80 > 192.168.200.81.49734: P 1:335(334)
 ack 180 win 123
E..v.N at .@..2...\...Q.P.F....db.
P..{....HTTP/1.1 404 Not Found
Server: nginx
Dat
17:39:39.406797 IP (tos 0x0, ttl 128, id 12657, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b75f)!) 192.168.200.81.49734 > 192.168.200.92.8
0: ., cksum 0x121a (incorrect (-> 0xf8e1), 180:180(0) ack 335 win 2051
E..(1q at ........Q...\.F.Pdb.
...RP.......
17:39:42.476443 IP (tos 0x0, ttl  64, id 56557, offset 0, flags [DF], proto: TCP
 (6), length: 40) 192.168.200.92.80 > 192.168.200.81.49722: F, cksum 0xad06 (cor
rect), 2414414714:2414414714(0) ack 931683036 win 123
E..(.. at .@.K....\...Q.P.:...z7.Z.P..{..........
17:39:42.476510 IP (tos 0x0, ttl 128, id 12700, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b734)!) 192.168.200.81.49722 > 192.168.200.92.8
0: ., cksum 0x121a (incorrect (-> 0xa57d), 1:1(0) ack 1 win 2052
E..(1. at ........Q...\.:.P7.Z....{P.......
17:39:42.476654 IP (tos 0x0, ttl 128, id 12701, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b733)!) 192.168.200.81.49722 > 192.168.200.92.8
0: F, cksum 0x121a (incorrect (-> 0xa57c), 1:1(0) ack 1 win 2052
E..(1. at ........Q...\.:.P7.Z....{P.......
17:39:42.476757 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], proto: TCP (6)
, length: 40) 192.168.200.92.80 > 192.168.200.81.49722: ., cksum 0xad05 (correct
), 1:1(0) ack 2 win 123
E..(.. at .@.(....\...Q.P.:...{7.Z.P..{..........
17:39:43.976475 IP (tos 0x0, ttl  64, id 14063, offset 0, flags [DF], proto: TCP
 (6), length: 40) 192.168.200.92.80 > 192.168.200.81.49723: F, cksum 0x25f3 (cor
rect), 810019316:810019316(0) ack 2634218907 win 123
E..(6. at .@......\...Q.P.;0G......P..{%.........
17:39:43.976477 IP (tos 0x0, ttl  64, id 6550, offset 0, flags [DF], proto: TCP
(6), length: 40) 192.168.200.92.80 > 192.168.200.81.49724: F, cksum 0x0dad (corr
ect), 1605028135:1605028135(0) ack 1598375176 win 123
...........;...\...Q.P.<_..'_EE.P..{
17:39:43.976549 IP (tos 0x0, ttl 128, id 12706, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b72e)!) 192.168.200.81.49723 > 192.168.200.92.8
0: ., cksum 0x121a (incorrect (-> 0x1e6b), 1:1(0) ack 1 win 2051
E..(1. at ........Q...\.;.P....0G..P.......
17:39:43.976601 IP (tos 0x0, ttl 128, id 12707, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b72d)!) 192.168.200.81.49723 > 192.168.200.92.8
0: F, cksum 0x121a (incorrect (-> 0x1e6a), 1:1(0) ack 1 win 2051
E..(1. at ........Q...\.;.P....0G..P.......
17:39:43.976629 IP (tos 0x0, ttl 128, id 12708, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b72c)!) 192.168.200.81.49724 > 192.168.200.92.8
0: ., cksum 0x121a (incorrect (-> 0x0625), 1:1(0) ack 1 win 2051
E..(1. at ........Q...\.<.P_EE._..(P.......
17:39:43.976693 IP (tos 0x0, ttl 128, id 12709, offset 0, flags [DF], proto: TCP
 (6), length: 40, bad cksum 0 (->b72b)!) 192.168.200.81.49724 > 192.168.200.92.8
0: F, cksum 0x121a (incorrect (-> 0x0624), 1:1(0) ack 1 win 2051
E..(1. at ........Q...\.<.P_EE._..(P.......
17:39:43.976822 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], proto: TCP (6)
, length: 40) 192.168.200.92.80 > 192.168.200.81.49723: ., cksum 0x25f2 (correct
), 1:1(0) ack 2 win 123
E..(.. at .@.(....\...Q.P.;0G......P..{%.........
17:39:43.976824 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], proto: TCP (6)
, length: 40) 192.168.200.92.80 > 192.168.200.81.49724: ., cksum 0x0dac (correct
), 1:1(0) ack 2 win 123
..........(....\...Q.P.<_..(_EE P..{


Подробная информация о списке рассылки nginx-ru