Size: a a a

2021 June 19

EN

Evgeniy Naumov in nginx_ru
in case you want to read more - https://docs.nextcloud.com/server/latest/admin_manual/installation/nginx.html
I used this docs. mostly as is
источник

Н

Никита in nginx_ru
Блин, про дэбаг эпичнейший тред, давайте, пацаны, мочите продолжение!!! :D
источник

EN

Evgeniy Naumov in nginx_ru
видимо ребята угарали и им надоело =)
источник

R

RHACOR in nginx_ru
@naumov_e Спасибо за информацию там посмотрю, большое спасибо
источник

k

kiosaku in nginx_ru
не получится, главный рассказчик пошёл лекцию Сысоеву читать: как устроен nginx и сколько в нём фаз обработки запроса
источник

MA

Maxim Avramenko in nginx_ru
Грубо, но смешно
источник

ВМ

Владимир Муковоз... in nginx_ru
Вы что до сих пор тут спорите )))
источник

Н

Никита in nginx_ru
Лол))
источник
2021 June 20

EN

Evgeniy Naumov in nginx_ru
Ну лично я думал узнаю способ дебага без дебаг-лога на гигабайты. Но видимо не судьба
Или еще есть шанс узнать секрет? Maxim
источник

A

Artem in nginx_ru
привет, подскажите плз, у меня есть вот такой конфиг

 location /my_app/api/ {
   auth_request /authentication/my_app_authorized;
   auth_request_set $user_type $upstream_http_user_type;
   proxy_set_header User-Type $user_type;
   proxy_pass 'http://my_app:3012/my_app/api/';
}

auth_request отрабатывает и proxy_pass в итоге тоже, но чет не подучается переложить заголовки из auth_request в заголовки proxy_pass, нужного заголовка User-Type в my_app по итогу не приходит. Подскажите как такое делают и как можно может точку останова поставить в локэйшане? а то он как черный ящик, не понимаю какие там энвы вообще есть и как их посмотреть можно
источник

A

Artem in nginx_ru
на всякий случай добавлю что запускаю всё в докере композом
источник

EN

Evgeniy Naumov in nginx_ru
Вот только про дебаги говорили =)
Я видел значения переменных опять же в дебаг логе, который error_log /blabla/log debug;
источник

k

kiosaku in nginx_ru
только не говори вчерашнему рассказчику, а то он Сысоеву глаза откроет
источник

EN

Evgeniy Naumov in nginx_ru
Ок. Молчу =)
источник

A

Artem in nginx_ru
ага, добавил запись из локейшна в дебаг лог, но там не видно заголовков которые приходят из auth_request может что то нужно специальное для этого написать? сейчас мой локейшн выглядит вот так

 location /quests/api/ {
   auth_request /authentication/quests_authorized;
 
   proxy_pass 'http://quests-api:3012/quests/api/';
   error_log /var/log/nginx/debug.log debug;
 }


и вот такой дебаг лог я получаю
`
2021/06/20 09:32:04 [debug] 71#71: *37 write new buf t:1 f:0 0000558B01FF3F48, pos 0000558B01FF3F48, size: 489 file: 0, size: 0
2021/06/20 09:32:04 [debug] 71#71: *37 http write filter: l:0 f:0 s:489
2021/06/20 09:32:04 [debug] 71#71: *37 http cacheable: 0
2021/06/20 09:32:04 [debug] 71#71: *37 http proxy filter init s:404 h:0 c:1 l:-1
2021/06/20 09:32:04 [debug] 71#71: *37 http upstream process upstream
2021/06/20 09:32:04 [debug] 71#71: *37 pipe read upstream: 0
2021/06/20 09:32:04 [debug] 71#71: *37 pipe preread: 5
2021/06/20 09:32:04 [debug] 71#71: *37 pipe buf free s:0 t:1 f:0 0000558B01FF4360, pos 0000558B01FF4508, size: 5 file: 0, size: 0
2021/06/20 09:32:04 [debug] 71#71: *37 pipe length: 3
2021/06/20 09:32:04 [debug] 71#71: *37 http chunked byte: 30 s:0
2021/06/20 09:32:04 [debug] 71#71: *37 http chunked byte: 0D s:1
2021/06/20 09:32:04 [debug] 71#71: *37 http chunked byte: 0A s:8
2021/06/20 09:32:04 [debug] 71#71: *37 http chunked byte: 0D s:9
2021/06/20 09:32:04 [debug] 71#71: *37 http chunked byte: 0A s:10
2021/06/20 09:32:04 [debug] 71#71: *37 http proxy chunked state 0, length 0
2021/06/20 09:32:04 [debug] 71#71: *37 pipe write downstream: 1
2021/06/20 09:32:04 [debug] 71#71: *37 pipe write downstream done
2021/06/20 09:32:04 [debug] 71#71: *37 event timer del: 5: 63879323
2021/06/20 09:32:04 [debug] 71#71: *37 event timer add: 5: 60000:63881679
2021/06/20 09:32:04 [debug] 71#71: *37 http upstream exit: 0000000000000000
2021/06/20 09:32:04 [debug] 71#71: *37 finalize http upstream request: 0
2021/06/20 09:32:04 [debug] 71#71: *37 finalize http proxy request
2021/06/20 09:32:04 [debug] 71#71: *37 free rr peer 1 0
2021/06/20 09:32:04 [debug] 71#71: *37 close http upstream connection: 5
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B02003730, unused: 48
2021/06/20 09:32:04 [debug] 71#71: *37 event timer del: 5: 63881679
2021/06/20 09:32:04 [debug] 71#71: *37 reusable connection: 0
2021/06/20 09:32:04 [debug] 71#71: *37 http upstream temp fd: -1
2021/06/20 09:32:04 [debug] 71#71: *37 http output filter "/quests/api/v1/daily_quests?user_id=20129302"
2021/06/20 09:32:04 [debug] 71#71: *37 http copy filter: "/quests/api/v1/daily_quests?user_id=20129302"
2021/06/20 09:32:04 [debug] 71#71: *37 http ssi filter "/quests/api/v1/daily_quests?user_id=20129302"
2021/06/20 09:32:04 [debug] 71#71: *37 posix_memalign: 0000558B0203B740:4096 @16
2021/06/20 09:32:04 [debug] 71#71: *37 ssi out: 0000558B0203B760 0000000000000000
2021/06/20 09:32:04 [debug] 71#71: *37 http postpone filter "/quests/api/v1/daily_quests?user_id=20129302" 0000558B0203B7B0
2021/06/20 09:32:04 [debug] 71#71: *37 http chunk: 0
2021/06/20 09:32:04 [debug] 71#71: *37 write old buf t:1 f:0 0000558B01FF3F48, pos 0000558B01FF3F48, size: 489 file: 0, size: 0
2021/06/20 09:32:04 [debug] 71#71: *37 write new buf t:0 f:0 0000000000000000, pos 0000000000000000, size: 0 file: 0, size: 0
2021/06/20 09:32:04 [debug] 71#71: *37 write new buf t:0 f:0 0000000000000000, pos 0000558B0159A467, size: 5 file: 0, size: 0
2021/06/20 09:32:04 [debug] 71#71: *37 http write filter: l:1 f:0 s:494
2021/06/20 09:32:04 [debug] 71#71: *37 http write filter limit 0
2021/06/20 09:32:04 [debug] 71#71: *37 writev: 494 of 494
2021/06/20 09:32:04 [debug] 71#71: *37 http write filter 0000000000000000
2021/06/20 09:32:04 [debug] 71#71: *37 http copy filter: 0 "/quests/api/v1/daily_quests?user_id=20129302"
2021/06/20 09:32:04 [debug] 71#71: *37 http finalize request: 0, "/quests/api/v1/daily_quests?user_id=20129302" a:1, c:1
2021/06/20 09:32:04 [debug] 71#71: *37 set http keepalive handler
2021/06/20 09:32:04 [debug] 71#71: *37 http close request
источник

A

Artem in nginx_ru
2021/06/20 09:32:04 [debug] 71#71: *37 http log handler
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FF4360
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FF1330
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B02002720, unused: 4
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FE4CD0, unused: 0
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FF0320, unused: 0
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FF2340, unused: 2
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FF3350, unused: 8
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B0203B740, unused: 3547
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FCE1D0
2021/06/20 09:32:04 [debug] 71#71: *37 hc free: 0000000000000000
2021/06/20 09:32:04 [debug] 71#71: *37 hc busy: 0000558B01FE8258 1
2021/06/20 09:32:04 [debug] 71#71: *37 free: 0000558B01FEE310
2021/06/20 09:32:04 [debug] 71#71: *37 tcp_nodelay
2021/06/20 09:32:04 [debug] 71#71: *37 reusable connection: 1
2021/06/20 09:32:04 [debug] 71#71: *37 event timer add: 4: 65000:63886679
`
источник

A

Artem in nginx_ru
ух, что то многовато получилось 🙂
источник

AN

Anton Noginov in nginx_ru
Как вы проверяете, что заголовок в прокси не добавляется?

server {
 listen 32080 ;

 location / {
   auth_request /auth ;
   auth_request_set $user_type $upstream_http_user_type;
   proxy_set_header User-Type "$user_type" ;
   proxy_pass http://127.0.0.1:32082 ;
 }

 location /auth {
   proxy_pass http://127.0.0.1:32081 ;
 }

}

server {
 listen 32081 ;
 add_header User-Type "admin" always ;
 location / { return 200 ; }
}

server {
 listen 32082 ;
 location / { return 200 "$http_user_type"; }
}
источник

AN

Anton Noginov in nginx_ru
# curl -sk -D - http://127.0.0.1:32080/
HTTP/1.1 200 OK
Server: nginx/1.14.0
Date: Sun, 20 Jun 2021 09:58:02 GMT
Content-Type: text/plain
Content-Length: 5
Connection: keep-alive

admin
источник

A

Artem in nginx_ru
я смотрю в приложении в которое уходит запрос после проксирования - там нет заголовка
источник