zoukankan      html  css  js  c++  java
  • Angular SEO方案

    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>
    

      

     

  • 相关阅读:
    Java内存模型
    Redis的复制特性
    Redis数据持久化
    Java的三种代理模式
    设计模式—模板方法模式
    设计模式—观察者模式
    web性能优化之:no-cache与must-revalidate深入探究
    JWT
    数值每三位加逗号
    Webpack 打包优化之速度篇
  • 原文地址:https://www.cnblogs.com/lhp2012/p/5229954.html
Copyright © 2011-2022 走看看