1、如果是java web项目,可以直接使用AngularSEO Filter。

官网地址 :http://www.angularseo.net/#about

<filter>
<filter-name>SEOFilter</filter-name>
<display-name>SEOFilter</display-name>
<description>AngularSEO Filter</description>
<filter-class>net.angularseo.SEOFilter</filter-class>
<!-- The path to the PhantomJS binary -->
<init-param>
<param-name>phantomjs.binary.path</param-name>
<param-value>C:\\phantomjs2.0\\bin\\phantomjs.exe</param-value>
</init-param>
<!-- The time waiting the JS page to finish the dynamic loading, unit is second.
-->
<init-param>
<param-name>waitForPageLoad</param-name>
<param-value>3</param-value>
</init-param>
<!-- Filter already embed google, bing, baidu UserAgent keywords,
If you want to support more, add them and split with |
-->
<init-param>
<param-name>robotUserAgents</param-name>
<param-value>YodaoBot|Zealbot</param-value>
</init-param>
<!-- The interval that SEOFilter update the static page snapshot -->
<init-param>
<param-name>cacheTimeout</param-name>
<param-value>24</param-value>
</init-param>
<!-- The path to save the static version pages -->
<init-param>
<param-name>cachePath</param-name>
<param-value>c:\\cache</param-value>
</init-param>
<!-- crawlDepth is used to limited the crawl depth -->
<init-param>
<param-name>crawlDepth</param-name>
<param-value>10</param-value>
</init-param>
<!-- The default page encoding of this site -->
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SEOFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

  

关于phantomjs: http://phantomjs.org/

2、后台针对每一个需要SEO的页面分别写一套,在后台渲染生成html的代码,嵌入到前台的html中,但是不显示。

<div style="display:none">
///后台生成的专门为了SEO需要的代码
//在后台可以通过判断请求的agent参数,判断是否是搜索引擎爬虫,如果不是,不需要生成这段隐藏的代码。
</div> <div ng-app="XXApp" ng-controller="XXController">
//前台业务的代码
</div>

  

 

Angular SEO方案的更多相关文章

  1. SEO方案

    前端需要注意哪些SEO 合理的title.description.keywords:搜索对着三项的权重逐个减小,title值强调重点即可,重要关键词出现不要超过2次,而且要靠前,不同页面title要有 ...

  2. vue的seo方案 prerender-seo-plugin

    利用vue cli 3.0安装脚手架.记住:勾选vue-router. 在vue.config.js里添加配置: 2, var path = require('path') 3, const Prer ...

  3. 整理网站优化(SEO)的方案

    首先,我们来确定一下seo方案的定义是什么,所谓seo方案是指针对于某个网站,在完成了解熟悉的情况下,结合自身的一套seo优化方法来制定完成符合这个网站seo推广思路和策略.接下来就了解一下新手seo ...

  4. 单页应用SPA做SEO的一种清奇的方案

    单页应用SPA做SEO的一种清奇的方案 网上有好几种单页应用转seo的方案,有服务端渲染ssr.有预渲染prerender.google抓AJAX.静态化...这些方案都各有优劣,开发者可以根据不同的 ...

  5. 83.基于Vue SEO的四种方案(小结)

    前言:众所周知,Vue SPA单页面应用对SEO不友好,当然也有相应的解决方案,下面列出几种最近研究和使用过的SEO方案,SRR和静态化基于Nuxt来说. 1.SSR服务器渲染:2.静态化:3.预渲染 ...

  6. 把angular项目整合到.net mvc中

    之前的开发选择的是完全舍弃服务端,仅保留最简单web服务器提供angular经打包的静态资源,此外所有的业务与数据请求都访问一个分离的WebApi来实现.不过最近碰到一个需求,有必要使用多个客户端,而 ...

  7. net mvc中angular

    把angular项目整合到.net mvc中   之前的开发选择的是完全舍弃服务端,仅保留最简单web服务器提供angular经打包的静态资源,此外所有的业务与数据请求都访问一个分离的WebApi来实 ...

  8. AngularJs(SPA)单页面SEO以及百度统计应用(上)

    只有两种人最具有吸引力,一种是无所不知的人,一种是一无所知的人 问:学生问追一个女孩总是追不上怎么办?回答:女孩不是追来的,是吸引来的,你追的过程是吸引女孩的过程,如果女孩没有看上你,再追都是没有用的 ...

  9. SEO技巧之WordPress篇幅

    随着搜索引擎大兴, 排列在前的网站引入大量流量. 无论是搜索页面的广告还是查出来的结果, 与搜索者的目标匹配度都比较高 (如果搜索引擎足够智能), 所以通过搜索引擎而来的访客很可能会从网站上得到他想要 ...

随机推荐

  1. Teach Yourself Programming in Ten Years

    Teach Yourself Programming in Ten Years——用十年教会自己编程 作者:Peter Norvig 译者:刘海粟 本文原文为:http://norvig.com/21 ...

  2. 回车键转tab键解决方案二

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  3. NetworkComms V3 之自定义对象

    NetworkComms网络通信框架序言 能够发送自定义对象,并且在发送的时候对发送的对象进行加密,压缩是networkComms v3框架的一个重要特性. 具体可以参考源码中 ExampleCons ...

  4. javascript画直线和画圆的方法(非HTML5的方法)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. ionic本质

    ionic本质一开发工具,ionic项目目录里在大堆东西,一堆插件(plugins),还有一堆npm包(node_modules),其实都是骗人的-( ̄▽ ̄-)~ 什么nodejs,npm只是为了解决 ...

  6. 初识selendroid

    Testerhome社区的lihuazhang对selendroid官网的部分内容进行了翻译和讲解. 以下内容均摘自lihuazhang.感谢lihuazhang的讲解.原文地址:https://gi ...

  7. 计算机网络(7)-----TCP协议概述

    传输控制协议(Transmission Control Protocol) 概念 一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义.在简化的计算机网络OSI模型中,它 ...

  8. android贪吃蛇(超级简陋版)

    public class body { public int ax;//代表X周变量 public int ay;//代表Y轴变量 public int getAx() { return ax; } ...

  9. MVC乱码可能的原因

    1.数据传输不对,或者根本没有进控制器 2.分部视图建立时一定要选择

  10. Java中文档制作与继承

    1:如何制作帮助文档(了解) (1)写一个类 (2)加入文档注释 (3)通过javadoc工具生成即可 javadoc -d 目录 -author -version ArrayTool.java 2: ...