Tôi đang cố gắng thiết lập proxy ngược cho bộ chứa docker bằng nginx.
Bộ chứa docker có sẵn và đang hoạt động trên cổng 8000.
Tôi muốn có thể truy cập vùng chứa thông qua địa chỉ mydomain.com:80/mycontainer.
Proxy đảo ngược dường như thành công trong việc nói chuyện với vùng chứa nhưng khi vùng chứa yêu cầu chuyển hướng đến trang đăng nhập của nó, nginx cố tải trang đăng nhập trên cổng 80 thay vì 8000 nhưng không thành công.
đây là cấu hình nginx của tôi cho đến nay:
docker-container ngược dòng {
máy chủ 127.0.0.1:8000;
}
người phục vụ {
nghe 80;
vị trí /mycontainer {
proxy_redirect tắt;
proxy_set_header Máy chủ $http_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-Host $server_name;
proxy_set_header Nâng cấp $http_upgrade;
proxy_set_header Kết nối "nâng cấp";
proxy_pass http://docker-container;
}
}
Đây là những gì tôi nhận được khi tôi chạy wget -S 127.0.0.1/mycontainer
:
wget -S 127.0.0.1/mycontainer
--2021-08-29 20:30:12-- http://127.0.0.1/mycontainer
Đang kết nối với 127.0.0.1:80... đã kết nối.
Đã gửi yêu cầu HTTP, đang chờ phản hồi...
Đã tìm thấy HTTP/1.1 302
Máy chủ: nginx/1.18.0 (Ubuntu)
Ngày: CN, 29 tháng 8 năm 2021 20:30:12 GMT
Loại nội dung: văn bản/đồng bằng; bộ ký tự = utf-8
Độ dài nội dung: 28
Kết nối: giữ nguyên
Nội dung-Ngôn ngữ: vi
Tùy chọn khung hình X: SAMEORIGIN
X-Download-Options: noopen
X-Content-Type-Options: nosniff
Chính sách giới thiệu: nguồn gốc-khi-nguồn gốc chéo
X-XSS-Bảo vệ: 1; chế độ = khối
Vị trí: /đăng nhập
Thay đổi: Chấp nhận
Set-Cookie: một số cookie
Vị trí: /đăng nhập [sau]
--2021-08-29 20:30:12-- http://127.0.0.1/login <--- ĐÂY LÀ VẤN ĐỀ. Phải là 127.0.0.1:8000/đăng nhập
Sử dụng lại kết nối hiện có thành 127.0.0.1:80.
Đã gửi yêu cầu HTTP, đang chờ phản hồi...
HTTP/1.1 404 Không tìm thấy
Máy chủ: nginx/1.18.0 (Ubuntu)
Ngày: CN, 29 tháng 8 năm 2021 20:30:12 GMT
Loại nội dung: văn bản/html
Độ dài nội dung: 162
Kết nối: giữ nguyên
29-08-2021 20:30:12 LỖI 404: Không tìm thấy.
Tôi không phải dân chuyên nghiệp trong lĩnh vực này nên chắc chắn còn nhiều sai sót.
Làm cách nào để chuyển hướng tự động trỏ đến đúng cổng (8000) chứ không phải cổng 80?