Điểm:0

Nginx proxy_pass thành hành vi khác nhau của http hoặc https

lá cờ de

Ngày tốt! Chúng tôi có proxy dựa trên nginx với cấu hình tiếp theo:

người phục vụ {
  server_name proxy;
  nghe 80;
  underscores_in_headers bật;
  access_log /var/log/nginx/access.log bodylog;

  địa điểm / {
    proxy_pass http://X.X.X.X:Y;
  }
}

Phần cuối là một ứng dụng có quyền truy cập trang đăng nhập đầu tiên để tìm kiếm sau đó. Vì vậy, vấn đề là: Khi chúng tôi điều chỉnh proxy thành địa chỉ IP của phụ trợ (proxy_pass http://X.X.X.X:Y) chúng tôi nhận thấy rằng tất cả các yêu cầu trong trình duyệt sau khi đăng nhập vào trang bắt đầu đều đi qua máy chủ proxy nginx và chúng tôi có thể đăng nhập chúng vào access.log.

Nhưng nếu chúng ta muốn sử dụng ở đây https://address.com cho cùng một ứng dụng như vậy

  địa điểm / {
    proxy_pass https://address.com;
    bộ giải quyết 127.0.0.11;
  }

chúng tôi nhận thấy rằng chỉ lần tải đầu tiên của trang đăng nhập đi qua proxy nginx, nhưng tất cả các hành động khác ở đó (bản thân đăng nhập, tìm kiếm sau đó, v.v.) đều đi ngay trên miền https://address.com (không thông qua máy chủ proxy), vì vậy không thể đăng nhập vào tệp access.log nginx-proxy, nhưng chúng tôi cần điều này! Có cách nào để thay đổi hành vi này như với proxy_pass thành IP không?


Thông tin bổ sung: Ứng dụng được triển khai trong cụm kube, vì vậy khi tôi cố gắng tiếp cận nó với các yêu cầu IP, hãy truy cập dịch vụ kube cho ứng dụng có loại LB rồi đến ứng dụng. Khi tôi cố gắng truy cập tên DNS bằng yêu cầu https, hãy truy cập nginx-ingress-controller trong cụm, sau đó đến dịch vụ kube cho ứng dụng rồi đến ứng dụng

vidarlo avatar
lá cờ ar
Bạn sử dụng địa chỉ nào để truy cập trang web thông qua proxy ngược nginx? Có thể ứng dụng thực hiện chuyển hướng hoặc URL tuyệt đối không?
Alexey avatar
lá cờ de
Để truy cập thông qua proxy, tôi sử dụng `http://nginx-IP:80` hoặc thậm chí tôi đã thử cấu hình tương tự nhưng với 443 và chứng chỉ cho máy chủ proxy, vì vậy lần đó tôi đã sử dụng `https://proxy-dns-name .com`. Với kết quả 443 giống nhau - sử dụng address.com trong proxy_pass nhận yêu cầu đầu tiên tới máy chủ proxy chuyển đến ứng dụng, nhưng trong chuỗi địa chỉ của địa chỉ trình duyệt thay đổi thành address.com và tất cả các yêu cầu tiếp theo trong trình duyệt tới ứng dụng sẽ chuyển qua proxy. Tôi đã thêm thông tin bổ sung về ứng dụng vào bài đăng đầu tiên
vidarlo avatar
lá cờ ar
Truy cập bảng điều khiển dành cho nhà phát triển của trình duyệt của bạn và kiểm tra chính xác điều gì đang xảy ra hoặc sử dụng một công cụ như `curl` để lấy các tiêu đề để xem chuyển hướng đến từ đâu.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.