javascript – 为AngularJS App创建用于搜索引擎抓取的HTML快照
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 为AngularJS App创建用于搜索引擎抓取的HTML快照,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1860字,纯文字阅读大概需要3分钟。
内容图文
首先让我告诉你我想做什么.
我想索引我在Angular JS中制作的网站,为此我已经阅读了谷歌出于此类目的的所有文档或文章.
而我发现的是:
我需要使用html5Mode或hashbag模式将我的角度js url转换为友好的url.
例如:http://www.example.com/#/关于http://www.example.com/#!/about或仅http://www.example.com/about
使用< meta name =“fragment”content =“!”>
因此,当我的网站上有任何抓取工具说Googlebot会来时它会看到我的网址为http://www.example.com/?_escaped_fragment_=/about所以现在我需要将这个请求提供给静态html页面. ..对??
现在我的问题是如何使用php框架生成这个html静态页面,这个html应该在其内容完全加载后自动创建意味着如果angular js正在加载带有$http请求的数据那么这个html只会在所有数据加载后生成在HTML模板中.
只有在可以自动生成的情况下,我才能将此html提供给抓取工具.
我已经通过手动创建一些html页面进行了本地测试,并检查如果请求将带有_escaped_fragment_参数,那么它将服务于该特定的静态html页面.
但是我无法找到方法,我将使用php框架为特定的角度js请求创建html页面.
我不想使用任何npm服务.我想在php和/或任何jQuery插件中完全创建它.
解决方法:
除了需要服务器之外,您还可以将转发的片段请求重定向到服务器在呈现各种视图后拍摄HTML快照,然后将其提供给Googlebot等,不要忘记您还需要设置您现有的Web服务器(如Apache或IIS)重定向到处理转义片段的新服务器.
我很感激你正在寻找一个PHP解决方案,并且不想使用像prerender或seoserver包那样的NPM,但我想以你的方式提出另一种更简单的解决方案:使用现有的托管解决方案,如https://www.seo4ajax.com/或而是https://prerender.io/.他们将为您提供可以抓取您网站的SEO服务器,除非您拥有一个超过几百页的庞大数据驱动网站,否则通常这是免费的.为您减少负载,无需运行另一台服务器,并且您可以获得一些不错的管理面板来查看哪些爬虫已经达到SEO重定向等.
从广义上讲,你需要在你提到的HTML中使用meta标签,以及AngularJS配置中的这些设置:
$locationProvider.html5Mode(true);
$locationProvider.hashPrefix('!');
然后是一些自定义重定向设置,例如.htaccess文件,如果你的现有服务器是Apache,这些网站会给你,你可以复制和粘贴.
内容总结
以上是互联网集市为您收集整理的javascript – 为AngularJS App创建用于搜索引擎抓取的HTML快照全部内容,希望文章能够帮你解决javascript – 为AngularJS App创建用于搜索引擎抓取的HTML快照所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。