HTTP/2: Điều mà mỗi chuyên gia SEO cần biết

20/11/13
365
139
43
#1
Việc chuyển sang HTTP/2 giúp cải thiện đáng kể tốc độ trang web, do vậy không có gì ngạc nhiên khi việc áp dụng đã tăng lên đáng kể trong vài năm qua.

Mặc dù lợi ích là rõ ràng nhưng HTTP/2 hiếm khi được các chuyên gia SEO nói đến và tôi nói rằng phần lớn họ sẽ cố gắng giải thích cách nó hoạt động và tại sao nó lại cần thiết.

Với việc Google đặt nhiều giá trị hơn vào tốc độ trang web trong thuật toán tìm kiếm của họ thì bạn không thể bỏ qua HTTP/2 và những lợi ích mà Google có thể mang lại cho trang web.

http2 dieu ma moi chuyen gia SEO can biet.jpg

Tháng trước, DeepCrawl.com đã tổ chức cuộc hội thảo web với Tom Anthony đã giải thích HTTP/2 là gì và tại sao nó lại quan trọng.

Nhiều câu hỏi đã được gửi bởi những người tham dự trong buổi hội thảo web và Tom Anthony đã dành thời gian để trả lời từng câu hỏi và bạn có thể nâng cao kiến thức của mình và chuẩn bị sẵn sàng để chuyển sang HTTP/2.

Khái niệm cơ bản về HTTP/2

HTTP/2 chỉ có giá trị khi bạn quan tâm đến SEO hay nó có mang lại bất kỳ lợi ích nào khác?

Nó chỉ hữu ích với SEO bởi nó rất tốt cho người dùng và Google muốn người dùng có trải nghiệm tốt.

Tại sao không ai muốn sử dụng HTTP/2?

Có rất ít lý do để không sử dụng HTTP/2.

- Việc migrate không ảnh hưởng đến SEO
- Tăng tốc độ trang web

Hãy cảnh giác với tính năng Server Push vì điều đó có thể tác động tiêu cực đến bạn nhưng nếu bạn chỉ kích hoạt HTTP/2 thì theo mặc định, Server Push sẽ không được sử dụng.

HTTP/2 có cải thiện hiệu suất SEO cho thiết bị di động không?

Có.

Có yêu cầu kỹ thuật cho các máy chủ để launch HTTP2 hay không?

Có, chỉ một số phần mềm máy chủ có thể hỗ trợ HTTP/2 vào lúc này.

Nếu hệ thống của bạn không thể thì hãy xem xét việc sử dụng một CDN để thực hiện nó.

Mất bao lâu để nâng cấp lên HTTP2?

Tôi đã triển khai HTTP/2 trên các trang web nhỏ với chưa đầy 1 giờ. Trên các trang web doanh nghiệp nó có thể mất nhiều tuần.

Có cách nào dễ dàng để biết liệu một trang web có sử dụng HTTP/2 trong mã nguồn không?

Điều quan trọng cần phải hiểu rằng mã nguồn sẽ không thay đổi với HTTP/2 - đó là thay đổi về cơ chế phân bổ HTML và các tập tin khác được phân bổ tới trình duyệt của bạn nhưng các tập tin đó vẫn giữ nguyên.

Nếu bạn muốn xem liệu trang web có đang sử dụng HTTP/2 hay không, hãy sử dụng Chrome developer tools và thêm trong cột protocol. Ngoài ra còn một tiện ích mở rộng của Chrome sẽ cho bạn biết liệu trang web có sử dụng HTTP/2 hay không.

http2 dieu ma moi chuyen gia SEO can biet 2.jpg

Nếu bạn chạy một trang web trên HTTP/2, có cần sử dụng HTTP/1 để dự phòng hay không?

Có - vẫn có nhiều thiết bị/bot không hỗ trợ HTTP/2.

Nếu bạn tắt HTTP/1 thì Googlebot không thể thu thập trang web của bạn. Tuy nhiên, không có lý do gì để không dự phòng.

Nhận HTTP/2

Điều đó có nghĩa là khi sử dụng HTTP/2 sẽ có ít cuộc gọi trang? Bởi tôi thấy rằng trang web quá chậm. Chỉ khi bạn triển khai thông qua CDN bạn sẽ thấy giảm tải trên máy chủ của mình.

Trưởng nhóm kỹ thuật mới của chúng tôi đã sử dụng công cụ của bên thứ 3 để cho thấy những lợi ích về hiệu suất mà chúng tôi nhìn thấy khi chuyển sang HTTP/2. Nhưng thực tế việc chuyển sang HTTP/2 chậm hơn 25%. Điều đó là như thế nào?

Hãy tưởng tượng, HTML cần tải một tập tin CSS và 100 hình ảnh. Nếu tất cả các yêu cầu này được yêu cầu cùng một lúc thì bạn có thể đạt đến giới hạn băng thông, điều đó có nghĩa là CSS đến chậm hơn một chút nhưng nó giúp duy trì thời gian để render trang cho người dùng. Tuy nhiên, tôi chưa bao giờ thấy điều đó trong thực tế và sẽ ngạc nhiên khi gặp một trang web chậm hơn với HTTP/2.

Hơn nữa, cơ chế ưu tiên của HTTP/2 sẽ cho phép bạn làm điều này.

Có người nói với tôi rằng thiết lập CDN sẽ mang lại nhiều giá trị hơn từ HTTP/2 vì tất cả các trang web của khách hàng mà chúng tôi đang làm việc đều nằm trên cùng máy chủ. Điều này có đúng không? Và HTTP/2 vẫn còn giá trị để thiết lập tất cả domain trên một máy chủ?

CDN hỗ trợ HTTP/2 như thế nào?

http2 dieu ma moi chuyen gia SEO can biet 3.jpg

CDN có hỗ trợ HTTP/2 không?

CDN có thể giúp trang web của bạn nói HTTP/2 nhưng chúng cũng cung cấp nhiều lợi ích khác nhau. Ví dụ, chúng có nghĩa là nhiều yêu cầu đến trang web của bạn không cần phải đi quá xa mà cũng tăng đáng kể tốc độ trang web của bạn. Hơn nữa, chúng có thể làm những thứ thông minh khác như tối ưu hóa hình ảnh của bạn...

Tôi tìm CDN như thế nào? Bạn có thể giải thích làm thế nào để nhận HTTP/2 không?

Để triển khai HTTP/2, bạn cần máy chủ có thể giao tiếp được với trình duyệt. Khi kết nối an toàn bắt đầu được mở, máy chủ sẽ cho trình duyệt biết liệu trình duyệt có thể nói HTTP/2 được hay không.

Do đó, bạn cần phải nâng cấp/cấu hình phần mềm máy chủ để có khả năng và sẵn sàng nói HTTP/2.

Sau đó, CDN sẽ ngồi giữa máy chủ và người dùng web của bạn. Có nhiều nhà cung cấp CDN nhưng có 2 nhà cung cấp mà bạn nên xem xétlà:

- CloudFlare: Một giải pháp "out of the box" tốt và có giá rất cạnh tranh - rất tuyệt vời cho các trang web nhỏ.

- Fastly: Nó đắt hơn một chút nhưng cực kỳ linh hoạt (nếu bạn biết bạn đang làm gì) và phức tạp hơn cho những người có nhu cầu cao hơn.

Cả 2 CDN này đều có thể nói HTTP/2 cho bạn.

Nếu tôi sử dụng CloudFlare để dự đoán HTTP/2, việc kích hoạt nó trên máy chủ của tôi có giúp cải thiện hơn không?

Hiện tại không có CDN nào thực sự nói HTTP/2 từ CDN đến máy chủ gốc, vì vậy nếu bạn triển khai CloudFlare và sử dụng nó cho HTTP/2 thì không có gì để làm ở phía máy chủ của bạn cả.

HTTP2 có yêu cầu sử dụng CDN và CDN xử lý các thay đổi đối với trang web của tôi như thế nào? Nó có cần lan truyền không? Nếu vậy, phải mất bao lâu để được đưa ra trên toàn thế giới?

Nó không yêu cầu sử dụng CDN.

Để lan truyền trên thoàn thế giới, nó sẽ phụ thuộc vào CDN nhưng ngày nay có thể chỉ mất một vài giây và thời gian đó chắc chắn không phải là điều đáng lo ngại.

Multiplexing

Liệu multiplexing có làm giảm số lượng kết nối đến máy chủ - điều này có thể cải thiện hiệu suất hay nguồn tài nguyên máy chủ không?

Tôi chưa thử nghiệm điều này nhưng tôi dự đoán nó ít tác động.

Việc duy trì nhiều kết nối mạng không khó đối với máy chủ - việc phản hồi các yêu cầu là tải nhiều hơn và điều đó sẽ không thay đổi nhiều.

Nếu bạn đã triển khai thông qua tuyến đường CDN thì bạn sẽ bù lại một số tải / băng thông của máy chủ vì CDN có thể phản hồi một số yêu cầu của bạn.

Tải Javascript không đồng bộ có nghĩa là phải mất một yêu cầu để tải các tập tin đó?

Khi bạn đã có multiplexing, bạn vẫn cần thực hiện yêu cầu cho từng nguồn tài nguyên. Server Push có thể là một yêu cầu duy nhất nhưng có thể nhận được nhiều phản hồi mang theo nhiều tập tin khác nhau. Tuy nhiên, điều này sẽ là một quyết định tích cực phía máy chủ.

Cân nhắc HTTP/2

Vì tối ưu hóa HTTP/2 khác với HTTP / 1.1, điều đó có nghĩa là nhóm phát triển của bạn cần liên tục tối ưu hóa cả 2 nguồn tài nguyên?

Có một số khuyến cáo có thể khác nhau giữa HTTP / 1.1 và HTTP / 2 nhưng rất ít.

Tôi khuyên bạn nên triển khai HTTP/2 nếu bạn chưa thực hiện và sau đó tối ưu hóa chúng.

Tôi nghĩ chúng ta sẽ thấy rõ hơn về các thực tiễn tốt nhất ở đây nhưng nhìn chung nếu bạn tối ưu hóa lưu lượng truy cập HTTP/1.1, bạn sẽ không làm tổn hại đến lưu lượng truy cập HTTP/2. Tuy nhiên, nó có thể không có giá trị nếu hầu hết lưu lượng truy cập của bạn là HTTP/2.

Tất cả các tài nguyên có tải cùng lúc với HTTP/2 không? Hay có những hạn chế nào khác không?

Số lượng tối đa 'luồng" phụ thuộc vào máy chủ nhưng RFC đề xuất ít nhất là 100!

Trong thực tế, và đối với hầu hết các trang web điều này hiếm khi khiến bạn phải lo lắng.

Bạn có nghĩ GZIP / Brotli đóng một phần trong tốc độ của trang web này không? CDN có vẻ khá đa dạng về cách thức / cách thức chúng triển khai HTTPS/2 và GZIP / Brotli

GZIP và Brotli chắc chắn hữu ích cho hầu hết các trang web nơi tài nguyên có thể nhận được khá lớn hiện nay. Brotli vẫn còn thiếu trong một số lĩnh vực nhưng GZIP là khá phổ biến hiện nay.

HTTP / 2 thực sự làm phức tạp thêm khi giới thiệu một tiêu chuẩn nén mới gọi là HPACK. Nó cho phép chúng tôi nén phần HTTP header, điều này thực sự hiệu quả.

John Henshaw đã đề cập rằng Chrome có thể triển khai điều này bằng thuộc tính ‘importance’.

Chuẩn HTTP/2 cho phép "ưu tiên luồng",cho phép bạn chỉ định một số yêu cầu quan trọng hơn các yêu cầu khác. Tôi không biết đó là những gì Henshaw đang nói nhưng nó có thể là ưu tiên mà Chrome chỉ định cho các tài nguyên thông qua phương pháp heuristics, nơi họ cố gắng tìm ra cái gì quan trọng hơn (thay vì bạn trực tiếp chỉ định nó).

HTTP/2 sẽ không can thiệp vào các chẩn đoán đó nhưng cơ chế ưu tiên luồng HTTP/2 cho phép bạn kiểm soát chi tiết hơn bằng cách chỉ định các ưu tiên tương đối của tài nguyên cũng như các phụ thuộc.

Nhận Grips với HTTP/2

Hy vọng rằng kiến thức chuyên môn của Anthony về HTTP/2 đã giúp bạn hiểu rõ hơn tầm quan trọng của nó cũng như hỗ trợ bạn giải thích một số cách thực hiện xung quanh việc triển khai.

Ghi nguồn diễn đàn marketing khi sao chép lại nội dung bài viết này.
Link:
HTTP/2: Điều mà mỗi chuyên gia SEO cần biết.
 
Sửa lần cuối bởi điều hành viên:

Bạn có quan tâm?

Donate