Welcome! Log In Create A New Profile

Advanced

Re: порядок прохождения http-фаз сервера

Oleg
March 19, 2013 07:30AM
On Tue, Mar 19, 2013 at 02:55:21PM +0400, Maxim Dounin wrote:
> Hello!
>
> Так, насколько я понимаю, будет мусор на выходе - сначала ответ
> 302 без тела, а потом ответ на исходный запрос. Посмотрите
> telnet'ом на ответ.

Да :-). Я это предположил, но проверить забыл.
Какие-то символы 'ba' в ответе странные:

$ telnet zbox-srv.kvm 80
Trying 192.168.77.26...
Connected to zbox-srv.kvm.
Escape character is '^]'.
GET /zboxweb/user/admin HTTP/1.1
Host: zbox-srv.kvm

HTTP/1.1 307 Temporary Redirect
Server: nginx/1.2.1
Date: Tue, 19 Mar 2013 11:24:40 GMT
Transfer-Encoding: chunked
Connection: keep-alive
Location: http://$host/zboxweb

ba
<html>
<head><title>307 Temporary Redirect</title></head>
<body bgcolor="white">
<center><h1>307 Temporary Redirect</h1></center>
<hr><center>nginx/1.2.1</center>
</body>
</html>

0

quit
<html>
<head><title>400 Bad Request</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<hr><center>nginx/1.2.1</center>
</body>
</html>
Connection closed by foreign host.


> Для access-фазы проще всего добавить заголовок location, и вернуть
> NGX_HTTP_TEMPORARY_REDIRECT (BTW, хочется возвращать именно 307?).
> Собственно, так же, как и для content-фазы, ибо там есть
> специальная обработка NGX_HTTP_*. Как-то так (выдержка из
> ngx_http_static_module.c):
>
> ngx_http_clear_location(r);
>
> r->headers_out.location = ngx_palloc(r->pool, sizeof(ngx_table_elt_t));
> if (r->headers_out.location == NULL) {
> return NGX_ERROR;
> }
>
> r->headers_out.location->value.len = len;
> r->headers_out.location->value.data = location;
>
> return NGX_HTTP_TEMPORARY_REDIRECT;

Т.е. устанавливать r->headers_out.status и делать ngx_http_send_header(r)
необязательно?

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

порядок прохождения http-фаз сервера

Oleg March 18, 2013 09:30AM

Re: порядок прохождения http-фаз сервера

Maxim Dounin March 18, 2013 09:42AM

Re: порядок прохождения http-фаз сервера

Oleg March 18, 2013 10:40AM

Re: порядок прохождения http-фаз сервера

Maxim Dounin March 18, 2013 10:54AM

Re: порядок прохождения http-фаз сервера

Oleg March 18, 2013 11:42AM

Re: порядок прохождения http-фаз сервера

Maxim Dounin March 18, 2013 12:02PM

Re: порядок прохождения http-фаз сервера

Oleg March 18, 2013 12:44PM

Re: порядок прохождения http-фаз сервера

Oleg March 18, 2013 02:54PM

Re: порядок прохождения http-фаз сервера

Maxim Dounin March 19, 2013 06:56AM

Re: порядок прохождения http-фаз сервера

Oleg March 19, 2013 07:30AM

Re: порядок прохождения http-фаз сервера

Maxim Dounin March 19, 2013 08:44AM

Re: порядок прохождения http-фаз сервера

Oleg March 19, 2013 09:16AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 137
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready