Google 和 Bing 如何索引 blazor 网站

How do Google and Bing index a blazor site

Google、Bing 和其他站点如何索引 blazor 站点?

当我查看 Blazor 应用程序(服务器或 WebAssembly (WASM))的页面源代码时,我看到的只是一个加载应用程序的 HTML 包装器。要查看生成的源代码,我需要使用 DOM 检查器。本文讨论放置 robots.txt (),但是当我创建站点索引时,它将指向的每个详细信息页面都将由 .razor 文件动态生成。

我是否需要做任何特别的事情来确保 Google、Bing 和其他人可以按照我的意愿将我的网站编入索引?

这不是严格意义上的 Blazor 问题。 Googlebot(Google 的爬虫)和 Bing 等搜索引擎爬虫不执行 WASM 代码,因此它们无法像 Blazor 那样为静态生成的站点编制索引。虽然,查看 Blazor 的发行说明,您似乎可以在服务器上启用预呈现和托管 Blazor,从而允许 HTML 内容在服务器上呈现并发送回用户。这种类型的服务器端呈现 (SSR) 允许搜索引擎索引并增加 SEO。看看这里的例子:https://andrewlock.net/enabling-prerendering-for-blazor-webassembly-apps/

上面 MirMikimn 的回答解决了问题的两端。

配置 Blazor 以使用预呈现有两件事:首先,它允许我使 html 源代码对标准 HttpClient GET 调用可见,这允许索引器调用和索引页面,但是现在它还允许我使用 API 控制器来生成 siteindex.xml 文件,我需要用它来将机器人引导到正确的位置。

只需添加一个 API 控制器并将其设置为响应对 Robots.txt 和 sitemap.xml 的调用即可:

[Route("/robots.txt")] 
public string robots()...

[Route("/siteindex.xml")] 
public string sitemap()...