Re: Re[2]: Непонятки с ответом 400
Maxim Dounin
mdounin на mdounin.ru
Пн Ноя 20 14:31:02 UTC 2017
Hello!
On Mon, Nov 20, 2017 at 04:55:17PM +0300, Slawa Olhovchenkov wrote:
> On Mon, Nov 20, 2017 at 04:43:05PM +0300, CoDDoC wrote:
>
> > Ладно, с этим разберусь.
> > Еще толику Вашего времени... Не совсем в тему, но почти. О выборе секции server для обработки запроса.
> >
> > Я слегка запутался, что от чего зависит: $host от $server_name или наоборот?
> > Вот как я это понимаю.
> >
> > 1. Сначала неправильный запрос:
> > echo -e 'HEAD http://www.other-domain.com/some-path HTTP/1.1\n''host:www.my-domain.com\n''user-agent:NCAT-TEST\n'| ncat www.my-domain.com 80
> > Как все происходит (ИМХО):
> > 1.1. Получаем значение $host из строки запроса: $host = www.other-domain.com
> > На заголовок ($http_host = www.my-domain.com) в данном случае не смотрим.
>
> так может делать только прокся (причем прямая, а не реверсивная), для www-сервера это некорректный
> запрос. отвечать 500 или 400, секция нафиг.
Не совсем так. Цитата из RFC 2616,
https://tools.ietf.org/html/rfc2616#section-5.1.2:
To allow for transition to absoluteURIs in all requests in future
versions of HTTP, all HTTP/1.1 servers MUST accept the absoluteURI
form in requests, even though HTTP/1.1 clients will only generate
them in requests to proxies.
Тот же текст в RFC 7230 - в секции 5.3.2.
--
Maxim Dounin
http://mdounin.ru/
Подробная информация о списке рассылки nginx-ru