1 điểm bởi GN⁺ 2024-01-10 | 1 bình luận | Chia sẻ qua WhatsApp
  • Trên Firefox Mobile 121.0 của Android, đã có một vấn đề webcompat được ghi nhận khi truy cập https://www.google.com/, khiến trang hiển thị màn hình trống và không thể sử dụng các chức năng cốt lõi của Google Search
  • Trong thử nghiệm tái hiện, cả Firefox Release 121.0.1Firefox Nightly 123.0a1 đều gặp cùng một vấn đề, trong khi Chrome 120.0.6099.43 không tái hiện lỗi này
  • Khi tắt ETP, banner cookie có xuất hiện, nhưng ngay cả sau khi đồng ý thì phần nội dung chính của trang vẫn tiếp tục là màn hình trống nên vấn đề không được giải quyết
  • Vấn đề Mozilla Bugzilla liên quan được liên kết với 1873601, và đã có sẵn một bản vá để phát hành dưới dạng dot-release nếu cần
  • Sau đó Google bắt đầu triển khai bản sửa lỗi, và qua quan sát trong vài giờ, có vẻ sự cố đã được khắc phục với đa số người dùng, nên đã có quyết định đóng issue với trạng thái fixed

Vấn đề xảy ra và môi trường báo cáo ban đầu

  • URL mục tiêu là https://www.google.com/, và loại vấn đề được đăng ký là Site is not usable
  • Triệu chứng được báo cáo là trang Google không tải bình thường mà hiển thị màn hình trống
  • Môi trường báo cáo ban đầu:
    • Trình duyệt: Firefox Mobile 121.0
    • Hệ điều hành: Android 13
    • Kiểm thử trên trình duyệt khác: Yes Other
  • Cấu hình trình duyệt bao gồm các giá trị sau:
    • gfx.webrender.all: false
    • gfx.webrender.blob-images: true
    • gfx.webrender.enabled: false
    • buildID: 20231230165955
    • channel: release
    • hasTouchScreen: true
    • mixed active/passive content blocked: false
    • tracking content blocked: false

Kết quả tái hiện và so sánh trình duyệt

  • Người phụ trách tái hiện đã có thể tái hiện vấn đề này
  • Môi trường thử nghiệm:
    • Firefox Nightly 123.0a1-20240108213208
    • Firefox Release 121.0.1-20231230165955
    • Chrome 120.0.6099.43
    • Thiết bị: OnePlus 6 A6000
    • Hệ điều hành: Android 11
    • Màn hình: 1080 x 2280, 19:9, khoảng 402 ppi
  • Kết quả tái hiện:
    • Đều tái hiện được trên Firefox Release và Nightly
    • Không tái hiện trên Chrome
  • Issue này được phân loại theo nhóm Firefox Mobile, engine Gecko, và lỗi tải trang

Thử nghiệm tắt ETP

  • Khi tắt ETP, banner cookie xuất hiện
  • Ngay cả sau khi chấp nhận banner cookie, phần nội dung chính của trang Google vẫn không hiển thị và tiếp tục ở trạng thái màn hình trống
  • Chỉ riêng kết quả thử nghiệm này không cho thấy việc tắt ETP là một cách giải quyết vấn đề

Chẩn đoán và các issue liên quan

  • Issue đã được chuyển sang giai đoạn needsdiagnosis
  • Bug Mozilla Bugzilla liên quan được tham chiếu chéo là 1873601
  • Trong cùng ngày, nhiều issue tương tự liên quan đến Google cũng được liên kết:

Tiến trình sửa lỗi và hướng xử lý

  • Người phụ trách cho biết đã chuẩn bị sẵn một bản vá để phát hành dưới dạng dot-release nếu cần
  • Ở trạng thái lúc đó, có nhận định rằng bản vá này có thể sẽ không cần thiết
  • Sau đó Google bắt đầu triển khai bản sửa lỗi, và qua quan sát tiến triển trong vài giờ, có vẻ sự cố đã được khắc phục với đa số người dùng
  • Khóa thảo luận đã được mở lại để hỗ trợ những người dùng vẫn còn gặp vấn đề màn hình trống trên Google Search và có thể giải quyết bằng UA spoof
  • Nếu cùng triệu chứng vẫn tiếp diễn, việc đăng ký một bug mới thay vì để lại bình luận trên issue hiện có có thể sẽ được phát hiện tốt hơn trong quá trình triage

1 bình luận

 
GN⁺ 2024-01-10
Ý kiến trên Hacker News
  • Điểm mấu chốt là, như đã nêu ở https://github.com/webcompat/web-bugs/issues/131916#issuecomment-1882627241, đây là trường hợp nhận diện UA phía server bị sai hoàn toàn
    Khi request bằng UA Firefox Android, server trả về một tài liệu HTML rỗng chỉ có doctype, và có thể tái hiện bằng curl
    $ curl -H "User-Agent: Mozilla/5.0 (Android 10; Mobile; rv:123.0) Gecko/123.0 Firefox/123.0" https://www.google.com
    Có vẻ mọi chuỗi UA phiên bản 65 trở lên đều bị ảnh hưởng, còn 64 trở xuống thì hoạt động

    • Chính xác hơn là Firefox Mobile
      Chuỗi UA mà Firefox Mobile gửi ở chế độ desktop nhận được phản hồi bình thường
    • Vài tuần trước, tôi cũng thấy hiện tượng này với Gmail trên Linux Firefox trong khoảng một tuần
  • Tôi làm việc ở Google Search. Xin lỗi về sự cố này. Giờ đã được sửa và cũng đã được đưa lên bảng trạng thái tìm kiếm: https://status.search.google.com/incidents/hySMmncEDZ7Xpaf9i32C

    • May mà nó được báo cáo ở nơi phù hợp và duy nhất có thể nhận hỗ trợ từ Google: trang nhất Hacker News
    • Tôi muốn nghe xem đó là lỗi gì và đã được sửa như thế nào
    • Những sự cố kiểu này chắc gây căng thẳng lắm. Phần mềm là lĩnh vực khó, và có vô số thứ có thể trục trặc
      Nhìn các dịch vụ lớn tương đối ít lỗi và gián đoạn mới thấy khối lượng công việc phía sau đó lớn đến mức nào
  • Google hợp tác với Mozilla để cung cấp trải nghiệm tìm kiếm không quảng cáo

    • Tình cờ là nó cũng trở thành trải nghiệm không có cả tìm kiếm
  • Google đang theo dõi sự cố này tại đây: https://status.search.google.com/incidents/hySMmncEDZ7Xpaf9i32C
    Nói công khai thì tôi làm ở Google, nhưng không phụ trách việc này. Tôi thấy link này trong bug trên Bugzilla

    • Tôi không hiểu vì sao việc này không chỉ đơn giản là rollback. Tệ nhất thì revert commit rồi triển khai lại là được
      Tôi hiểu là vấn đề xảy ra với một trình duyệt hơi ít phổ biến hơn, nhưng với kỹ sư Google thì bản thân việc sửa lỗi lẽ ra phải nhỏ nhặt chứ nhỉ
  • Gửi người submit: “Hãy dùng tiêu đề gốc nếu nó không gây hiểu lầm hoặc câu view, và đừng chỉnh sửa.” — https://news.ycombinator.com/newsguidelines.html
    Nếu muốn nói điều bạn cho là quan trọng trong bài, hãy để lại bình luận trong thread. Khi đó nó sẽ được hiển thị trong cùng điều kiện với mọi người khác: https://hn.algolia.com/?dateRange=all&page=0&prefix=false&sort=byDate&type=comment&query=%22level%20playing%20field%22%20by:dang
    Tiêu đề đã submit là “Google breaks search for Firefox users because of bad UA string sniffing”

  • Tôi nhớ đến một bài blog của cựu lãnh đạo Mozilla viết rằng Google cố tình gây lỗi để khiến người dùng chuyển sang Chrome
    https://news.ycombinator.com/item?id=38349357

    • Bạn cho rằng chuyện đó cũng xảy ra ở đây à? Rằng Google đã biến trang tìm kiếm thành màn hình trắng để đẩy người dùng Firefox sang Chrome?
      Hay có thể đây là chuyện gần với dao cạo Hanlon hơn
  • https://github.com/webcompat/web-bugs/issues/131916#issuecomment-1882627241
    Đây hoàn toàn là một trường hợp nhận diện UA phía server bị sai. Khi request bằng UA Firefox Android, nhận được một tài liệu HTML rỗng chỉ có doctype
    Có thể tái hiện bằng curl, và có vẻ mọi chuỗi UA phiên bản 65 trở lên đều bị ảnh hưởng. 64 trở xuống thì hoạt động

    • Điều thú vị là nếu bỏ “Android” khỏi UA thì nhận được nhiều nội dung hơn, bỏ “Mobile” thì vẫn chỉ nhận doctype, còn bỏ “Firefox” thì được sửa hoàn toàn
  • Có lý do chính đáng nào để dùng nhận diện chuỗi UA thay vì feature detection không? Và một công cụ tìm kiếm rốt cuộc cần dùng tính năng hiện đại đến mức nào để có thể không chạy được trên mọi trình duyệt?

    • Đã có vài trường hợp; cái đầu tiên ảnh hưởng đến tôi là việc Chrome thay đổi để yêu cầu cờ SameSite=None trong header Set-Cookie ở ngữ cảnh bên thứ ba[1]

      Cảnh báo: Một số phiên bản cũ của Chrome, Safari và UC browser không tương thích với thuộc tính None mới và có thể bỏ qua hoặc hạn chế cookie
      Vì ràng buộc này, để thiết lập cookie được đảm bảo hoạt động đúng, nhận diện UA là cách đáng tin cậy duy nhất
      1: https://web.dev/articles/samesite-cookies-explained

    • Để theo dõi người dùng theo những cách mới mẻ và thú vị
    • Tôi đã thấy các trình duyệt hành xử hơi khác nhau ở những điểm tinh vi. Trong lúc tìm cách sửa đúng, để giảm tác động, chúng tôi từng trả về nội dung khác nhau theo từng trình duyệt nhằm cung cấp trải nghiệm hoạt động được cho những người dùng đó
      Việc này không liên quan đến feature detection nên các đề xuất thường thấy không áp dụng được
    • Trường hợp phát hiện hệ điều hành của người dùng để cung cấp link tải binary phù hợp?
    • Một điểm nổi bật ở trang chủ Google Search là nó cực kỳ nhanh. Trong vòng 200ms sau lần gõ phím đầu tiên, nó phản hồi bằng 10 gợi ý có cả văn bản và hình ảnh, rồi tiếp tục hoạt động như vậy
      Thời gian khứ hồi đến www.google.com của tôi khoảng 20ms, nên ít nhất 100ms trong đó được tiêu tốn trên Internet
      Tốc độ như vậy không thể có nếu không tối ưu hóa mạnh. Thật ra tôi sẽ ngạc nhiên nếu www.google.com không phải là trang được tối ưu hóa nhiều nhất trên Internet
      Vì vậy việc tối ưu hóa tùy theo trình duyệt gửi request chẳng có gì đáng ngạc nhiên
  • Tôi không ngờ mình sẽ cười, nhưng ảnh chụp màn hình chỉ toàn một hình chữ nhật trắng tinh lại buồn cười một cách kỳ lạ