Tôi có hai ứng dụng Django đang chạy trên máy chủ Debian của mình với Gunicorn.
Một chạy trên cổng 80(app1), cái còn lại trên 84(app2). app1 đang hoạt động tốt. Nhưng khi cố gắng mở app2, tôi nhận được 502 Bad Gateway từ Nginx. Cả hai cấu hình của họ gần như giống hệt nhau. Tôi không biết tại sao điều này không hoạt động. Tôi cũng có ứng dụng thứ ba đang chạy nhưng ứng dụng đó đang chạy trên Flask IIRC.
trang web có sẵn/ứng dụng2
người phục vụ {
nghe 84;
tên_máy chủ ứng dụng2;
địa điểm / {
bao gồm proxy_params;
proxy_pass http://127.0.0.1:7000;
}
vị trí /tĩnh/ {
gốc/nhà/ứng dụng1;
try_files $uri =404;
}
}
trang web có sẵn/ứng dụng1
người phục vụ {
nghe 80;
tên_máy chủ ứng dụng1;
địa điểm / {
bao gồm proxy_params;
proxy_pass http://127.0.0.1:8000;
}
vị trí /tĩnh/ {
gốc/nhà/django;
try_files $uri =404;
}
địa điểm /bestanden/ {
gốc/nhà/django/tệp;
add_header Thực dụng công khai;
add_header Kiểm soát bộ đệm "công khai";
}
}
/etc/systemd/system/app1.service
[Đơn vị]
Mô tả=Ứng dụng1
Sau=mạng.mục tiêu
[Dịch vụ]
Loại = đơn giản
Người dùng = root
ExecStart=/bin/bash /home/app1/bin/start-app.sh
Khởi động lại = khi thất bại
[Cài đặt]
WantedBy=multi-user.target
/home/app1/bin/start-app1.sh
cd /home/app1/ứng dụng
tiếng vang "Đang kích hoạt"
nguồn /home/app1/env/bin/kích hoạt
tiếng vang "Bắt đầu"
# conf.py chứa một số biến môi trường cho ứng dụng
gunicorn -c "/home/app1/env/bin/gunicorn.conf.py" app1.wsgi
/etc/systemd/system/pricescraper.server
[Đơn vị]
Mô tả=Ứng dụng2
Sau=mạng.mục tiêu
[Dịch vụ]
Loại = đơn giản
Người dùng = root
ExecStart=/bin/bash /home/app2/bin/start-app.sh
Khởi động lại = khi thất bại
[Cài đặt]
WantedBy=multi-user.target
/home/app2/bin/start-app2
cd /home/app2/ứng dụng/
nguồn /home/app2/venv/bin/kích hoạt
gunicorn -c "/home/app2/venv/bin/gunicorn.conf.py" app2.wsgi -b 192.168.188.43:7000
Khi tôi xem error.log, tôi nhận được điều này:
[lỗi] 1560#1560: *1 connect() thất bại (111: Kết nối bị từ chối) trong khi kết nối với thượng nguồn, máy khách: 192.168.188.199, máy chủ: app2, yêu cầu: "GET / HTTP/1.1", ngược dòng: "http:/ /127.0.0.1:7000/", máy chủ: "192.168.188.43:84"
Tôi không biết điều này có nghĩa là gì, việc tìm kiếm trên Google đã kết thúc bằng một câu hỏi trong đó họ đang sử dụng ổ cắm và chỉ cần xóa tiền tố ULR, tiền tố này không áp dụng cho tôi. Phần kỳ lạ nhất là khi tôi mở 192.168.188.43:7000, tôi mở index.html nhưng không tải bất kỳ tệp tĩnh nào, bao gồm JS cần thiết nên tôi không thể kiểm tra phần phụ trợ.
Xin vui lòng, bất kỳ trợ giúp đánh giá cao!