Theo chính google và một câu hỏi khác ở đây , các bot của google thực thi JavaScript trên các trang web được thu thập thông tin và lập chỉ mục nội dung được hiển thị.
Tuy nhiên,
[a] ccording tới [các] kinh nghiệm [của ít nhất một công ty này] , trong khi hầu hết các chức năng dựa trên JavaScript hiện nay được hiểu bởi Googlebot, nó liên tục thất bại trong việc thu thập nội dung lấy bằng XMLHttpRequest API từ một nguồn bên ngoài - hoặc bất cứ điều gì được xây dựng dựa trên hoặc liên quan đến API này. Hành vi này hiện diện trong JavaScript, jQuery, AngularJS thuần túy hoặc các khung JavaScript hiện đại khác. Bất cứ khi nào bạn cần lấy nội dung từ URL "bên ngoài" hoặc gọi điểm cuối API REST để tìm nạp một số dữ liệu, rất có thể nó sẽ không được thu thập và lập chỉ mục chính xác.
(nhấn mạnh của tôi) Hành vi này hiện chúng ta cũng đang phải đối mặt:
- Chúng tôi có một ứng dụng phản ứng tích hợp vào trang web của khách hàng, trang đích của họ là danh sách các thứ có liên kết đến một trang con cho mỗi (
<a data-reactid="0.1.2.3.4" href="https://webmasters.stackexchange.com/some/site/itemid/9876">
) - Trang đích được hiển thị chính xác trong bảng điều khiển tìm kiếm của Google ("Đây là cách Googlebot thấy trang" bằng trực quan "Đây là cách khách truy cập vào trang web của bạn sẽ nhìn thấy trang")
- Nội dung của trang đích có thể được tìm thấy trong kết quả tìm kiếm của google.
- Không có nội dung của bất kỳ trang con nào có thể được tìm thấy qua google trong thời gian tới (vài tuần sau, nội dung của một phần của các trang con là) .
Dưới đây là một ứng dụng phản ứng demo với các liên kết và trang con được tạo ra phản ứng / js được lập chỉ mục chính xác. Sự khác biệt chính là, như đã đề cập, chúng tôi lấy nội dung của các trang con từ một máy chủ bên ngoài. Không có cách nào khác - chúng tôi có nội dung, nhưng trang web sẽ hiển thị nó chỉ bao gồm tập lệnh js của chúng tôi và một yếu tố để kết xuất nó, chúng tôi không có quyền kiểm soát trang web nữa, ít hơn máy chủ mà nó chạy.
Là trích dẫn ở trên là chính xác hay tôi đang thiếu một cái gì đó?
our-clients-site.com/some/site
, tải oursite.com/app.js
, sau đó tải dữ liệu từ oursite.com/api/item...
và hiển thị trang. Vì vậy, chúng tôi thực sự kiểm soát trang web API, nhưng không phải trang web thực sự đã truy cập. (Xin lỗi, đã bỏ lỡ bình luận của bạn tuần trước. Dù sao cũng cảm ơn bạn. :-))