2012-12-06 49 views
5

Hãy nói về AJAX bò bằng google:history.js + Google

Kể từ history.js là một lựa chọn tốt đẹp để xấu xí hashbang url tôi đã tự hỏi về một vấn đề nhất định: Đối với trình duyệt HTML5, url đẹp được tạo ra nếu ajax -content được tải và phải được lập chỉ mục bởi google. Đối với các trình duyệt không có HTML5 (ví dụ: IE 9 không hỗ trợ history.pushState) hashbang cũ được sử dụng.

Vì vậy, phiên bản nào được google xem? Có bất kỳ rủi ro nào google nhìn thấy nội dung trùng lặp (một lần có url đẹp, một lần với hashbang) không?

Cảm ơn bạn đã suy nghĩ về điều đó.

Trả lời

0

Nếu trang ajax cần được lập chỉ mục với google, chúng tôi cần máy chủ ảnh chụp nhanh html của trang từ máy chủ.

Ví dụ: xyz.com/page1#!name=john

Trình thu thập thông tin của Google tìm thấy số này! số nhận dạng và yêu cầu http://xyz.com/page1?_escaped_fragment_=name=john Bằng cách này, máy chủ của chúng tôi có thể quản lý ảnh chụp nhanh html của trang.

Bây giờ, khi URL của chúng tôi được định dạng sẵn và nối với #! các trang ajax sẽ được lập chỉ mục.

Đối với các trang chỉ được thêm # vào URL, trình thu thập thông tin của Google sẽ không thể xem nội dung được tải qua ajax và nó sẽ không được lập chỉ mục. Vì vậy, sẽ không có bất kỳ khả năng trùng lặp nào

Chúng tôi cũng có thể sử dụng thẻ liên kết trong phần đầu của trang với url pháo liên tiếp trỏ đến url thư. Xem http://googlewebmastercentral.blogspot.in/2009/02/specify-your-canonical.html để tham khảo.

0

HTML

<a href="http://some/other/page/1" data-history='{"some":"data"}' title="...">link1</a> 
<a href="http://some/other/page/2" data-history='{"some":"data"}' title="...">link2</a> 

Javascript

$(document).on('click', '[data-history]', function(e){ 
    e.preventDefault(); 
    History.pushState($(this).data().history, this.title, this.href); 
}) 

Đối với khách hàng với JavaScript được bật, các hisotory.js sẽ xử lý này để yêu cầu AJAX, cho khách hàng mà không Javascript, nó sẽ yêu cầu các trang bình thường.

0

Tôi khuyên bạn chỉ nên sử dụng API lịch sử HTML5 cho các trình duyệt hỗ trợ API (khoảng 70% trình duyệt) trong khi cung cấp các trang tĩnh thông thường cho các trình duyệt không sử dụng. Bằng cách này, sẽ không có khả năng các công cụ tìm kiếm sẽ thấy bất kỳ điều gì khác với các URL tĩnh chuẩn hoàn chỉnh.

Các vấn đề liên quan