Помилка
Під час міграції фронта (nginx) з стійки в AWS зіткнувся з проблемою, маючи location:
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):
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; }
Звісно якщо всі vhosts використовують даний локейшен, тоді варто параметр resolver 10.1.20.2; вказати в nginx.conf.
Перечитуємо конфігурацію:
# перевірка синтаксису nginx -t # перечитуємо коніфгурацію nginx systemctl reload nginx
Click to rate this post!
[Total: 2 Average: 5]