Angular SEO如何正确实现动态title和meta?
Angular SEO how to correctly implement dynamic title and meta?
我有一个关于 Angular 标题和元的小问题。我已将库导入我的 angular。我在 .ts 文件的构造函数中设置了我的标题和元描述(当然每个页面都有不同的标题和描述);
//To set the title
this.titleServ.setTitle("SOME TITLE HERE")
//To set the meta
this.meta.addTag({name: "description", content: "SOME DESCRIPTION HERE"})
当我通过 IIS 运行 我的网站并从浏览器检查时,我仍然看到这样的东西;
<title></title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
如上所述,我无法从源代码中看到我的页面标题或页面描述(但我可以从 google 搜索和 google chrome 选项卡中看到)。我目前正在尝试设置搜索引擎优化。这里有什么问题吗?我的意思是我看到的所有教程都可以从部分看到他们的页面标题,也可以看到元。
我做错了什么或者我需要做些什么才能通过某些关键字搜索在 google 中显示该网站?
Angular 默认情况下是客户端应用程序。当您为应用程序提供服务并查看 HTML 源代码时,您实际上会获得 index.html
的源代码,它位于 src
.
的根目录中
为了 SEO,您需要在服务器上呈现页面。这样,当浏览器收到 HTML 时,它会使用某些数据元素进行预呈现,包括与 SEO 相关的 tags/content.
这是关于如何将服务器端呈现(Angular 通用)添加到您的应用程序的官方指南:https://angular.io/guide/universal
关键部分是,要进行服务器端渲染,您需要使用专用命令启动您的应用程序(例如默认情况下 npm run dev:ssr
)。这将启动节点,它将在服务器端处理请求。
我有一个关于 Angular 标题和元的小问题。我已将库导入我的 angular。我在 .ts 文件的构造函数中设置了我的标题和元描述(当然每个页面都有不同的标题和描述);
//To set the title
this.titleServ.setTitle("SOME TITLE HERE")
//To set the meta
this.meta.addTag({name: "description", content: "SOME DESCRIPTION HERE"})
当我通过 IIS 运行 我的网站并从浏览器检查时,我仍然看到这样的东西;
<title></title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
如上所述,我无法从源代码中看到我的页面标题或页面描述(但我可以从 google 搜索和 google chrome 选项卡中看到)。我目前正在尝试设置搜索引擎优化。这里有什么问题吗?我的意思是我看到的所有教程都可以从部分看到他们的页面标题,也可以看到元。
我做错了什么或者我需要做些什么才能通过某些关键字搜索在 google 中显示该网站?
Angular 默认情况下是客户端应用程序。当您为应用程序提供服务并查看 HTML 源代码时,您实际上会获得 index.html
的源代码,它位于 src
.
为了 SEO,您需要在服务器上呈现页面。这样,当浏览器收到 HTML 时,它会使用某些数据元素进行预呈现,包括与 SEO 相关的 tags/content.
这是关于如何将服务器端呈现(Angular 通用)添加到您的应用程序的官方指南:https://angular.io/guide/universal
关键部分是,要进行服务器端渲染,您需要使用专用命令启动您的应用程序(例如默认情况下 npm run dev:ssr
)。这将启动节点,它将在服务器端处理请求。