Cập nhật
hành vi chỉ có thể tải một trang web tại một thời điểm dường như có liên quan đến trình duyệt phía máy khách - Nếu tôi mở cả 3 trang web trong một cửa sổ trình duyệt (mỗi tab một tab) thì chúng tôi sẽ nhận được hành vi được mô tả bên dưới. Nếu tôi sử dụng 3 trình duyệt riêng biệt (tôi đã sử dụng Edge, Opera và Chrome) thì cả 3 trang web đều tải như mong đợi.
/Cập nhật
Tôi có thiết lập proxy ngược Nginx để chuyển lưu lượng truy cập bên ngoài đến một trong 3 máy chủ nội bộ (máy chủ Windows 2019 chạy IIS 10) dựa trên url (đây là môi trường thử nghiệm). Máy chủ nginx và máy chủ web đều nằm trong cùng một vlan.
Điều này đã hoạt động như dự định cho đến sáng nay khi sau khi khởi động lại máy chủ web, nginx hiện chỉ có thể tải một trong 3 trang web cùng một lúc.
Nếu tôi cố gắng mở cả 3 trang web, trang đầu tiên tải như bình thường, 2 trang còn lại báo lỗi 404 ngay lập tức. Nếu tôi đợi vài phút và làm mới một trong các trang 404 thì nó sẽ tải nhưng trang đầu tiên vẫn ổn sẽ chuyển sang 404, điều tương tự cũng xảy ra nếu trang thứ ba được tải.
Cấu hình Nginx chưa được thay đổi và đang tải cả 3 trang web cùng lúc trước khi khởi động lại sáng nay.
Tôi đã kiểm tra nginx conf với nginx -t đã hoạt động trở lại
Tôi đã tải lại nginx conf với Sudo systemctl reload nginx - không thay đổi hành vi
Tôi đã khởi động lại máy chủ nginx - không có thay đổi nào trong hành vi
Duyệt trực tiếp các máy chủ web, cả 3 trang web đều hoạt động bình thường.
Tôi có thể telnet trên cổng 443 từ nginx đến cả 3 máy chủ web và ngược lại.
Bất kỳ đề xuất về lý do tại sao hành vi có thể đã thay đổi?
Cấu hình nginx như sau (Tôi đã thay thế các url thực nhưng conf không thay đổi):
dữ liệu www của người dùng;
worker_processes tự động;
pid /run/nginx.pid;
bao gồm /etc/nginx/modules-enabled/*.conf;
sự kiện {
công_nhân kết_nối 1024 ;
# đa_chấp vào ;
}
#add bởi Ian để cho phép phát trực tuyến
dòng {
# Để thêm các trang web và máy chủ bổ sung:
# Thêm tên máy chủ và nhãn phụ trợ vào bản đồ, sau đó thêm các khối ngược dòng, như trong ví dụ nhận xét bên dưới.
# ***Khi bạn đã cập nhật cấu hình, bạn PHẢI tải lại nginx bằng lệnh sau: sudo systemctl reload nginx
bản đồ $ssl_preread_server_name $name {
url.1.com Máy chủ súng;
url.2.com CatServer;
url.3.com Máy chủ xanh;
# <tên máy chủ của trang web ở đây> <nhãn văn bản cho máy chủ phụ trợ ở đây>;
# ví dụ: mywebsite.com myserver;
}
# Sau đó, tạo một khối ngược dòng mới bằng cách sử dụng nhãn được đặt ở trên như hình bên dưới
# máy chủ myserver ngược dòng {
# máy chủ <IP:cổng>;
#}
máy chủ súng ngược dòng {
máy chủ 10.25.2.12:443;
}
ngược dòng CatServer {
máy chủ 10.25.2.13:443;
}
ngược dòng BlueServer {
máy chủ 10.25.2.11:443;
}
người phục vụ {
nghe 443;
proxy_pass $name;
ssl_preread on;
}
}
# tất cả các cài đặt bên dưới dòng này là từ ví dụ nginx conf