【发布时间】:2015-04-16 00:43:03
【问题描述】:
我正在努力为 Angular SEO 问题找到一个完整、明确和最新的答案。
我有一个 Angular 应用程序,它有一个主模板 index.html 和多个视图。视图的处理方式如下:
app.config(["$routeProvider", function($routeProvider) {
$routeProvider
.when("/", {
templateUrl : "views/home.html",
controller : "HomeController",
title: "Home"
})
.when("/about", {
templateUrl : "views/about.html",
controller : "AboutController",
title: "About"
});
}]);
现在,当我转到 www.example.com/#/about 时,我会看到关于页面。
问题:Google 似乎没有将视图中的链接或内容编入索引。
我看过解释 Google 现在如何执行 javascript 的教程,因此它应该呈现视图,但是当它抓取时,它会将 hashbang 替换为 ?_escaped_fragment_=
1:我应该启用 hashbangs 而不是仅在 URL 中启用哈希吗?这对 Google 抓取我的网站有帮助吗? Angular 是这样解释的:$locationProvider.hashPrefix('!');
2:我应该在 HTML5 模式下瞄准干净的 URL 吗?比如去www.example.com/about
3: URL hashbang/HTML5 模式是我唯一需要担心的事情吗? Google 真的会执行加载视图和更新页面标题所需的 javascript,然后读取呈现的结果吗?
【问题讨论】:
标签: javascript angularjs html seo