首页 文章

添加sitemap.xml后谷歌没有抓取我的angularjs网站

提问于
浏览
0

在阅读了关于angularjs和SEO(包括谷歌文档)的多个来源之后,我明白了让谷歌抓取我网站的两个主要选项是:

  • 将hashbang(#!)添加到我的URL,并且在爬行引擎的请求到达我的服务器后(在请求中,#!被escape_fragment替换)我应该使用外部服务(如prerender)呈现和响应html快照 . io)或实施自己 .

2.将hashbang(#!)添加到我的URL中 - 以便google可以告诉它在此URL中有动态呈现的数据,并将sitemp.xml添加到网站 . as it is shown here

这就是我处理路线的方式:

mi.config(['$routeProvider','$locationProvider', function ($routeProvider, $locationProvider) {
$routeProvider.when('/home', { templateUrl: 'js/app/partials/Home/Home.html' });
$routeProvider.when('/items/:CatId', { templateUrl: 'js/app/partials/Items/Items.html' });
$routeProvider.when('/about', { templateUrl: 'js/app/partials/about.html' });
$routeProvider.when('/checkout', { templateUrl: 'js/app/partials/Checkout/Checkout.html' });
$routeProvider.when('/contact', { templateUrl: 'js/app/partials/contact.php' });
$routeProvider.otherwise({ redirectTo: '/home' });


$locationProvider.hashPrefix('!');

This is my sitemap.xml

my website

我在网站管理员工具中看到谷歌认可了新的网站 Map ,但它还没有 grab 它们 .

有什么我想念的吗?

1 回答

  • 0

    考虑使用Google Web Master工具 - 部分抓取,以查看Google在抓取您的网站时是否发现了一些错误 .

    您还可以尝试使用“抓取为Google”功能,该功能可以让您深入了解Google如何看待您的Angular应用 .

    在您的特定情况下,即使您将200作为HTTP响应发送,某些页面(来自站点 Map 的链接)也不会返回任何可抓取的内容:

    http://www.chefnoded.co.il/shop/#!/items/6
    
    http://www.chefnoded.co.il/shop/#!/items/5
    
    http://www.chefnoded.co.il/shop/#!/items/4
    

相关问题