Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Giải pháp tạm thời là kết xuất động
Trên một số trang web, JavaScript sẽ tải thêm nội dung khi trang mở trong trình duyệt.
Quá trình này được gọi là kết xuất phía máy khách. Google Tìm kiếm nhìn thấy nội dung này cùng với nội dung trong HTML của một trang web. Xin lưu ý rằng có một số hạn chế đối với JavaScript trong Google Tìm kiếm và có thể một số trang sẽ gặp phải sự cố nội dung không xuất hiện trong HTML được kết xuất. Các công cụ tìm kiếm khác có thể chọn bỏ qua JavaScript và sẽ không thấy nội dung do JavaScript tạo.
Kết xuất động là một cách xử lý cho những trang web mà công cụ tìm kiếm không thấy nội dung do JavaScript tạo trên đó.
Máy chủ kết xuất động phát hiện các bot có thể gặp sự cố với nội dung do JavaScript tạo rồi phân phát phiên bản do máy chủ kết xuất mà không có JavaScript cho các bot này trong khi cho người dùng thấy phiên bản nội dung do máy khách kết xuất.
Kết xuất động là một giải pháp tạm thời chứ không phải là giải pháp được đề xuất vì cách này phức tạp hơn và đòi hỏi thêm tài nguyên.
Những trang web có thể sử dụng chế độ kết xuất động
Chế độ kết xuất động yêu cầu máy chủ web của bạn phát hiện các trình thu thập dữ liệu (ví dụ: bằng cách kiểm tra tác nhân người dùng). Khi máy chủ web của bạn xác định một yêu cầu từ một trình thu thập dữ liệu không hỗ trợ JavaScript hoặc không hỗ trợ các tính năng JavaScript cần thiết để kết xuất nội dung của bạn, yêu cầu này sẽ được chuyển đến một máy chủ kết xuất. Các yêu cầu từ người dùng và trình thu thập dữ liệu không gặp vấn đề về JavaScript sẽ được phân phát như bình thường.
Máy chủ kết xuất sẽ phản hồi các yêu cầu bằng một phiên bản nội dung phù hợp với trình thu thập dữ liệu, ví dụ: máy chủ kết xuất có thể phân phát phiên bản HTML tĩnh.
Bạn có thể chọn bật trình kết xuất động đối với tất cả trang hoặc trên mỗi trang.
Kết xuất động không phải là kỹ thuật che giấu
Thường thì Googlebot thường không xem kết xuất động là kỹ thuật che giấu.
Miễn là quy trình kết xuất động của bạn dẫn đến nội dung giống nhau, Googlebot sẽ không xem kết xuất động là kỹ thuật che giấu.
Khi bạn đang thiết lập chế độ kết xuất động, trang web của bạn có thể tạo ra các trang lỗi. Googlebot không xem các trang lỗi này là kỹ thuật che giấu và sẽ xử lý lỗi như bất cứ trang lỗi nào khác.
Việc sử dụng kết xuất động để phân phát nội dung hoàn toàn khác nhau cho người dùng và trình thu thập dữ liệu có thể bị xem là kỹ thuật che giấu.
Ví dụ: một trang web phân phát một trang về mèo cho người dùng và một trang về chó cho trình thu thập dữ liệu là đang triển khai kỹ thuật che giấu.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-08-04 UTC."],[[["\u003cp\u003eDynamic rendering was a temporary solution for search engines having trouble accessing JavaScript-generated content, and it is not recommended for long-term use.\u003c/p\u003e\n"],["\u003cp\u003eWebsites may utilize dynamic rendering to present a server-rendered version of their content to search engine bots while displaying the client-side rendered version to users.\u003c/p\u003e\n"],["\u003cp\u003eModern solutions like server-side rendering, static rendering, or hydration are preferred over dynamic rendering.\u003c/p\u003e\n"],["\u003cp\u003eDynamic rendering is not considered cloaking by Google as long as the content served to bots is similar to that presented to users.\u003c/p\u003e\n"],["\u003cp\u003eWebsites with rapidly changing JavaScript-generated content or using JavaScript features unsupported by crawlers might have previously used dynamic rendering as a workaround.\u003c/p\u003e\n"]]],["Dynamic rendering serves search engine crawlers a server-rendered version of content, while users see client-side rendered content, as a workaround for JavaScript limitations. It detects crawler requests and routes them to a rendering server for static HTML delivery. While not considered cloaking if content is similar, serving entirely different content is. This method is complex and not recommended long-term; server-side, static rendering, or hydration are preferred alternatives. Dynamic rendering was used for public, rapidly changing or incompatible Javascript content.\n"],null,["# Dynamic Rendering as a workaround | Google Search Central\n\nDynamic rendering as a workaround\n=================================\n\n| Dynamic rendering was a workaround and not a long-term solution for problems with JavaScript-generated content in search engines. Instead, we recommend that you use [server-side rendering](https://web.dev/articles/rendering-on-the-web#server-side), [static rendering](https://web.dev/articles/rendering-on-the-web#static), or [hydration](https://web.dev/articles/rendering-on-the-web#rehydration) as a solution.\n\n\nOn some websites, JavaScript loads additional content when the page is open in a browser.\nThis is called [client-side rendering](https://web.dev/articles/rendering-on-the-web#client-side). Google Search sees this content along with the content in the HTML of a website. Keep in mind that there are some [limitations for JavaScript in Google Search](/search/docs/crawling-indexing/javascript/javascript-seo-basics#write-compatible-code)\nand some pages may encounter problems with content not showing up in the rendered HTML. Other search engines may choose to ignore JavaScript and won't see JavaScript-generated content.\n\n\nDynamic rendering is a workaround for websites where JavaScript-generated content is not available to search engines.\nA dynamic rendering server detects bots that may have problems with JavaScript-generated content and serves a server-rendered version\nwithout JavaScript to these bots while showing the client-side rendered version of the content to users.\n\n\nDynamic rendering is a workaround and not a recommended solution, because it creates additional complexities and resource requirements. \n\nSites that might use dynamic rendering\n--------------------------------------\n\n\nDynamic rendering was a workaround for indexable, public JavaScript-generated content that changes rapidly, or\ncontent that uses [JavaScript features that aren't supported by the crawlers](/search/docs/guides/rendering)\nyou care about. Not all sites need to use dynamic rendering, and there are better solutions than dynamic rendering as explained in\n[an overview of rendering on the web](https://web.dev/articles/rendering-on-the-web).\n\nUnderstand how dynamic rendering works\n--------------------------------------\n\n\nDynamic rendering requires your web server to detect crawlers (for example, by checking the\nuser agent). When your web server identifies a request from a crawler that does not support JavaScript or the JavaScript features required to render your content,\nthis request is routed to a rendering server. Requests from users and crawlers without JavaScript issues are served normally.\nThe rendering server responds to requests with a version of the content that's suitable to the crawler, for example, it may serve a static HTML version.\nYou can choose to enable the dynamic renderer for all pages or on a per-page basis.\n\nDynamic rendering is not cloaking\n---------------------------------\n\n\nGooglebot generally doesn't consider dynamic rendering as [cloaking](/search/docs/essentials/spam-policies#cloaking).\nAs long as your dynamic rendering produces similar content, Googlebot won't view dynamic rendering as cloaking.\n\n\nWhen you're setting up dynamic rendering, your site may produce error pages. Googlebot doesn't consider these error pages as cloaking and [treats the error as any other error page](/search/docs/crawling-indexing/javascript/javascript-seo-basics#use-meaningful-http-status-codes).\n\n\nUsing dynamic rendering to serve completely different content to users and crawlers can be considered cloaking.\nFor example, a website that serves a page about cats to users and a page about dogs to crawlers is cloaking."]]