AngularJs(SPA)单页面SEO以及百度统计应用(上)
2017-02-12 12:34 海豚湾 阅读(4058) 评论(0) 编辑 收藏 举报只有两种人最具有吸引力,一种是无所不知的人,一种是一无所知的人
问:学生问追一个女孩总是追不上怎么办?回答:女孩不是追来的,是吸引来的,你追的过程是吸引女孩的过程,如果女孩没有看上你,再追都是没有用的。
也许用更多的时间丰富自己,让自己变得更有内涵,再出现在女孩面前,她就喜欢你了。另外,爱是有缘分的,哪怕再有内涵气质的人,也不能让所有女孩喜欢。
结语:真主安拉,two words -> 看脸(捂脸表情~),至少你可以吸引爬虫@~@
读在最前面:
本文内容以国内SEO(Search Engine Optimization)为基板
一:SEO收录渠道入口:
1、优质外链
2、主动提交搜索引擎
3、各种社会化书签
4、浏览器搜索记录及相关工具条记录
二:SEO优化:
1、内功:
(1)、关键词分析(关键词关注量分析、竞争对手分析、关键词与网站相关性分析、关键词布置、关键词排名预测)
(2)、原创精品内容
(3)、meta标签:title,keywords,description等,img属性(alt,title等)
(4)、链接:锚文本,图片链接,sitemap等
(5)、网站结构(如:内容页层级不宜过深,每个页面都可以通过至少一个文本链接到达)
(6)、提示:301 ,403,404,503
2、外功:
(1)、精品外链
(2)、高质量友链
三:Angular(SPA单页面) SEO方案:针对爬虫请求,使用nginx导向到服务端渲染服务进行单独处理,本案例使用 prerender.io
迸发磁环境!
1、准备工作
1、node环境安装
2、prerender环境安装
(1)、下载prerender
(2)、解压prerender到本地目录 eg: D:\
(3)、打开cmd命令,切换至D:\prerender,执行命令:npm insatll
(过程中会下载phantomjs,如果服务器网络不好,可以本地下载(vpn)后并拷贝到服务器 C:\Users\Administrator\AppData\Local\Temp\2\phantomjs下,然后执行npm install)
(4)、等待 npm install 命令完成后,执行命令: node server.js
(本地服务到此就开启了,默认端口为3000)
2、Nginx配置
说明:
(1)、配置nginx对爬虫请求进行头信息判断,反向代理到prerender本地服务上进行处理,配置如下:
(2)、配置成功后,重启nginx,访问 domain?_escaped_fragment_ 即可。(可提交搜索引擎测试url 进行实际效果查看 )
location / { try_files $uri @prerender; } location @prerender { set $prerender 0; if ($http_user_agent ~* "baiduspider|twitterbot|facebookexternalhit|rogerbot|linkedinbot|embedly|quora link preview|showyoubot|outbrain|pinterest|slackbot|vkShare| W3C_Validator") { set $prerender 1; } if ($args ~ "_escaped_fragment_") { set $prerender 1; } if ($http_user_agent ~ "Prerender") { set $prerender 0; } if ($uri ~* "\.(js|css|xml|less|png|jpg|jpeg|gif|pdf|doc|txt|ico|rss|zip|mp3|rar|exe|wmv|doc|avi|ppt|mpg|mpeg|tif|wav|mov|psd|ai|xls|mp4|m4a|swf|dat|dmg|iso|flv|m4v| torrent|ttf|woff|svg|eot)") { set $prerender 0; } #resolve using Google's DNS server to force DNS resolution and prevent caching of IPs #resolver 8.8.8.8; if ($prerender = 1) { #setting prerender as a variable forces DNS resolution since nginx caches IPs and doesnt play well with load balancing #ip替换为本地ip set $prerender "ip:3000"; rewrite .* /$scheme://$host$request_uri? break; proxy_pass http://$prerender; } if ($prerender = 0) { rewrite .* /index.html break; } }
备注:
1、禁止爬虫,可以编写robots(eg:https://www.taobao.com/robots.txt)放到网站根目录 + 服务器处理(判断请求头,进行特殊处理)
2、通过site:domain 可以查看百度seo收录情况
3、prerender还有很多优化配置,参见文档
4、spa百度统计,可在路由改变的时候,手动调用百度接口进行提交相关信息
by:海豚湾-丰