Các bạn, tôi cần trợ giúp với cấu hình NGINX của mình. Hiện tại, ứng dụng Django được lưu trữ tại các dịch vụ Ứng dụng Azure và chuyển thẳng đến Gunicorn hoạt động tốt, nhưng khi tôi chuyển qua NGINX, tôi bắt đầu gặp lỗi, như thế này:
Tôi đã cố gắng tăng thời gian chờ, nhưng các lỗi liên tục xuất hiện trên các điểm cuối khác nhau và các điểm cuối hoạt động tốt khi tôi không sử dụng NGINX mà chỉ sử dụng gunicorn, vì vậy tôi đoán nó phải làm gì đó với bộ NGINX- hướng lên.
2022-01-26T10:22:03.479463450Z nginx | 26/01/2022 10:22:03 [thông tin] 29#29: *2245 epoll_wait() báo cáo rằng máy khách đã đóng kết nối sớm, vì vậy kết nối ngược dòng cũng bị đóng trong khi gửi yêu cầu ngược dòng, máy khách: 169.254.130.1, máy chủ: xxxxx .com, yêu cầu: "GET /api/v1/office-hours/ HTTP/1.1", ngược dòng: "http://127.0.0.1:8000/api/v1/office-hours/", máy chủ lưu trữ: "xxxxx.com ", liên kết giới thiệu: "https://xxxx.vercel.app/"
2022-01-26T10:22:03.514362267Z nginx | 169.254.130.1 - - [26/Jan/2022:10:22:03 +0000] "GET /api/v1/office-hours/ HTTP/1.1" 499 0 "https://xxxx.vercel.app/" " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, như Gecko) Chrome/97.0.4692.99 Safari/537.36"
2022-01-26T10:23:03.513182059Z nginx | 26/01/2022 10:23:02 [thông tin] 29#29: *2247 epoll_wait() báo cáo rằng máy khách đã đóng kết nối sớm, vì vậy kết nối ngược dòng cũng bị đóng trong khi gửi yêu cầu ngược dòng, máy khách: 169.254.130.1, máy chủ: xxxxx .com, yêu cầu: "GET /api/v1/office-hours/ HTTP/1.1", ngược dòng: "http://127.0.0.1:8000/api/v1/office-hours/", máy chủ lưu trữ: "xxxxx.com ", liên kết giới thiệu: "https://xxxx.vercel.app/"
2022-01-26T10:23:03.513238060Z nginx | 169.254.130.1 - - [26/Jan/2022:10:23:02 +0000] "GET /api/v1/office-hours/ HTTP/1.1" 499 0 "https://xxxx.vercel.app/" " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, như Gecko) Chrome/97.0.4692.99 Safari/537.36"
web | [2022-01-25 17:21:07 +0000] [15] [PHẦN QUAN TRỌNG] NHÂN VIÊN HẾT THỜI GIAN (pid:32)
2022-01-25T17:21:07.490138324Z web | 25-01-2022 18:21:07,487 [32mINFO [31mglogging [33mWorker thoát (pid: 32) [34mgunicorn.error.info:264[0m
2022-01-25T17:21:07.490220225Z nginx | 25/01/2022 17:21:07 [lỗi] 25#25: *930 kết nối ngược dòng bị đóng sớm trong khi đọc tiêu đề phản hồi từ ngược dòng, máy khách: 169.254.130.1, máy chủ: xxxx.com, yêu cầu: "NHẬN /api/v1 /cms/content/ HTTP/1.1", ngược dòng: "http://127.0.0.1:8000/api/v1/cms/content/", máy chủ lưu trữ: "xxxx.com"
2022-01-25T17:21:07.490875232Z nginx | 169.254.130.1 - - [25/Jan/2022:17:21:07 +0000] "GET /api/v1/cms/content/ HTTP/1.1" 502 158 "-" "axios/0.18.1"
2022-01-25T17:21:07.490892833Z nginx | 25/01/2022 17:21:07 [thông tin] 25#25: *930 client 169.254.130.1 đã đóng kết nối keepalive
2022-01-25T17:21:08.673367528Z web | [2022-01-25 17:21:08 +0000] [15] [CẢNH BÁO] Worker với pid 32 đã bị chấm dứt do tín hiệu 9
2022-01-25T17:21:08.679932505Z web | [2022-01-25 17:21:08 +0000] [43] [INFO] Boot worker với pid: 43
đây là nginx.conf của tôi
#người dùng nginx;
công_nhân 2; # Đặt thành số lõi CPU, 2 lõi trong gói Azure P1v3
error_log /var/log/nginx/error.log gỡ lỗi;
pid /var/run/nginx.pid;
sự kiện {
công_nhân kết_nối 1024 ;
}
http {
bao gồm /etc/nginx/mime.types;
ứng dụng default_type/octet-stream;
log_format chính '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log chính;
gửi tệp trên;
#tcp_nopush bật;
keepalive_timeout 65;
#gzip trên;
bao gồm /etc/nginx/conf.d/*.conf;
}
đây là mặc định của tôi.conf
người phục vụ {
nghe 80 default_server;
thông tin error_log /dev/stdout;
truy cập_log /dev/stdout;
client_max_body_size 100M;
vị trí/tĩnh {
gốc /var/app/ui/build;
}
vị trí /site-static {
gốc /var;
}
địa điểm/phương tiện {
gốc /var;
}
địa điểm / {
gốc /var/app/ui/build; # thử phản ứng thư mục bản dựng trước, nếu tệp không tồn tại, hãy định tuyến yêu cầu tới ứng dụng django
try_files $uri $uri/index.html $uri.html @app;
}
vị trí @app {
proxy_set_header Máy chủ lưu trữ $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto "https"; # giả sử https đã bị bộ cân bằng tải kết thúc trước mặt chúng ta
proxy_pass http://127.0.0.1:8000;
proxy_read_timeout 300;
tắt proxy_buffering;
}
}