Помилка
Під час міграції фронта (nginx) з стійки в AWS зіткнувся з проблемою, маючи location:
x
location /file {
internal;
set $reproxy $upstream_http_x_reproxy_url;
proxy_pass $reproxy;
proxy_buffering off;
proxy_hide_header Content-Type;
expires 1M;
}
перестав віддавати статику, тобто переходячи за певним посиланням отримував 502 error.
В /var/log/nginx/error.log побачив наступне:
2022/07/11 13:17:58 [error] 27647#27647: *29956 no resolver defined to resolve *******-static-***.s3.eu-central-1.amazonaws.com, client: ***.22.**.75, server: **.test.*****.com, request: "HEAD /files/docker/604c743.png?v=44
Рішення
В location /file додаємо параметр resolver в якості якого додаємо IP DNS AWS VPS (для прикладу 10.1.20.2):
Звісно якщо всі vhosts використовують даний локейшен, тоді варто параметр resolver 10.1.20.2; вказати в nginx.conf.
Перечитуємо конфігурацію:
# перевірка синтаксису
nginx -t
# перечитуємо коніфгурацію nginx
systemctl reload nginx
location /file {
internal;
resolver 10.1.20.2;
set $reproxy $upstream_http_x_reproxy_url;
proxy_pass $reproxy;
proxy_buffering off;
proxy_hide_header Content-Type;
expires 1M;
}
Click to rate this post!
[Total: 2 Average: 5]