Назад | Перейти на главную страницу

Понимание оператора журнала nginx

Мне нужна помощь в понимании следующего оператора журнала, найденного в файле журнала ошибок / var / log / nginx /.

2016/07/28 14:06:05 [ошибка] 7255 # 7255: * 712 open () "/ usr / share / www / proj / check_proxy" не удалось (2: нет такого файла или каталога), клиент: 180.97.xxx .xxx, сервер: localhost, запрос: "GET http://180.163.xxx.xxx/check_proxy HTTP / 1.1 ", хост:" 180.163.xxx.xxx "

Как прочитать сообщение журнала выше? В частности, что такое сервер, а что хост? Каждый раз, когда я пытаюсь получить доступ к сайту, значение GET в сообщении журнала начинается с символа косой черты (/). Но в приведенном выше сообщении журнала отображается URL-адрес. Как я могу воспроизвести вышеуказанное сообщение журнала?

Интересные моменты в приведенном выше сообщении журнала: IP-адрес хоста такой же, как IP-адрес в URL-адресе, кроме GET. Файл nginx conf не содержит имени сервера localhost, но он отображается в значении сервера в приведенном выше сообщении журнала. Все остальные сообщения журнала показывают host как IP-адрес машины, а server как server_name из файла конфигурации nginx. Всего несколько наблюдений, основанных на моих ограниченных знаниях.

Большое спасибо заранее.

В server Часть строки журнала - это имя виртуального хост-сервера nginx, который обработал запрос.

Если у вас нет server блок с server_name localhost, то он использует любые server блок с default_server атрибут.

Если у вас нет default_server определено в вашей конфигурации nginx, я предполагаю, что nginx поместит localhost в таком случае.

host это значение HTTP / 1.1 Host заголовок присутствует в HTTP-запросе. Если вы делаете запрос с использованием IP-адреса, то он совпадает с IP-адресом, который вы используете в URL-адресе.

Это только обоснованное предположение, но тот факт, что request часть содержит полный URL-адрес фактического запроса, возможно потому, что запрос попал в default_server, и поэтому полезно регистрировать полный URL-адрес запроса, чтобы знать, какое имя хоста было запрошено.