Làm thế nào để tải trang web phụ thuộc vào công việc?


1

Khi tôi nhập vào udacity.comtrình duyệt web, nó sẽ tự động tảihttps://in.udacity.com

Cái này hoạt động ra sao?

Liệu udacity.com máy chuyển hướng tất cả các yêu cầu đến từ các khu công nghiệp thuộc Ấn Độ để in.udacity.com sử dụng HTTP REDIRECT 301?

Câu trả lời:


3

Udacity sử dụng Cloudflare làm proxy cho các máy chủ thực tế của họ. Bất kỳ yêu cầu nào https://www.udacity.comtrước tiên sẽ được chuyển đến Cloudflare và sau đó sẽ được chuyển hướng đến miền thích hợp cho vị trí địa lý của nguồn gốc.

Kiểm tra phản hồi của:

curl -iv https://www.udacity.com

Do đó, địa chỉ IP mà từ đó vị trí của bạn có thể được xác định. Cloudflare cung cấp dịch vụ này - nó sẽ thêm tiêu đề định vị địa lý cho bất kỳ yêu cầu nào, sau đó các máy chủ Udacity sẽ sử dụng để xác định tên miền nào sẽ chuyển hướng bạn đến.

Phương pháp xác định vị trí này không phải lúc nào cũng chính xác và có thể dẫn đến kết quả dương tính giả, đặc biệt nếu bạn đang sử dụng nhà cung cấp VPN. Ngoài ra, nó khá chậm tùy thuộc vào cách bạn tìm vị trí địa lý. Nhà cung cấp như Cloudflare có thể thực hiện tương đối nhanh, vì họ xử lý nhiều yêu cầu và có thể lưu trữ thông tin, do đó, nó không thêm vào thời gian yêu cầu. Đối với trang web doanh nghiệp nhỏ của bạn, tôi không khuyên bạn nên sử dụng IP để xác định vị trí của người dùng.

Nhân tiện, việc chuyển hướng không phải là vĩnh viễn, vì bạn có thể thay đổi quốc gia. Vì vậy, sẽ không có nghĩa khi luôn chuyển hướng bạn đến một tên miền phụ cụ thể. Thay vào đó nó sử dụng một 302 Foundchỉ thị , mà chỉ là tạm thời.

Một phương pháp khác để chuyển hướng người dùng dựa trên vị trí của họ sẽ là kiểm tra Accept-Languagetiêu đề của trình duyệt, trong đó chỉ định ngôn ngữ máy khách. Ví dụ, địa phương có thể fr-CHnói rằng bạn thích tiếng Pháp hơn với một địa phương Thụy Sĩ (họ nói tiếng Pháp ở Thụy Sĩ, nhưng nó khác biệt một cách tinh tế với tiếng Pháp họ nói ở Pháp, do đó cần phải phân biệt). Tuy nhiên, điều này cũng không phải lúc nào cũng đáng tin cậy - tôi có tất cả phần mềm của mình được đặt thành tiếng Anh Mỹ và điều này thường xuyên khiến các trang web nghĩ rằng tôi có trụ sở tại Mỹ. Ở đây, một cách tiếp cận dựa trên vị trí địa lý sẽ đáng tin cậy hơn.


0

Có một tiêu đề HTTP được gọi là "Ngôn ngữ chấp nhận" trong yêu cầu trình duyệt của bạn gửi đến máy chủ cho biết bạn thích ngôn ngữ nào và thông tin đó có thể được sử dụng trên máy chủ để chuyển hướng bạn đến trang web phù hợp bất kể địa chỉ IP của bạn.

Xác định vị trí của bạn dựa trên địa chỉ IP của bạn (cơ sở dữ liệu GeoLocation) có thể là một giải pháp khác, tuy nhiên những cơ sở dữ liệu đó thường không chính xác 100%.


Trong cả hai trường hợp, việc chuyển hướng đến các URL khác nhau có phải do HTTP REDIRECT 301 không?
kartik trivikram

@karthikts Không, sử dụng curl -iv https://www.udacity.comđể xem phản hồi thực tế - đó là phản hồi 302.
slhck

Độ bền không sử dụng Accept-Languagetham số. Thay vào đó, bạn có thể tự mình thử điều đó bằng cách đặt một địa chỉ khác bằng cách sử dụng địa chỉ IP.
slhck
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.