<
始終以來,搜查引擎優(yōu)化(SEO)是開發(fā)者輕易忽視的局部。網絡推廣以企業(yè)產品或服務為核心內容建立網站,再把這個網站通過各種免費或收費渠道展示給網民的一種推廣方式。SEO是針對搜查(Googl
E、百度、雅虎搜查等)在技巧細節(jié)上的優(yōu)化,例如語義、搜查要害詞與內容相干性、收錄量、搜查排名等。SEO也是同行、市場競爭常用的的營銷手段。Googl
E、百度的搜查結果是重要的用戶進口,騰訊云有30%左右的流量來自搜查引擎。因此SEO在品牌、營銷、用戶量的緯度是十分重要的基本才干。
那么單頁利用與傳統直出頁面在SEO方面有哪些不同之處呢?
單頁利用的優(yōu)點
更好的用戶閉會,讓用戶在web感觸natvie的速度跟流暢;
經典MVC開發(fā)模式,前后端各負其責。
一套Server API,多端利用(we
B、挪動APP等)
重前端,業(yè)務邏輯全部在本地操作,數據都須要通過AJAX同步、提交;
對搜查引擎不友愛
單頁利用實際是把視圖(View)渲染從Server交給瀏覽器,Server只供給JSON格局數據,視圖跟內容都是通過本地JavaScript來組織跟渲染。而搜查搜查引擎抓取的內容,須要有完全的HTML跟內容,單頁利用架構的站點,并不能很好的支撐搜查。
假如站點在用戶閉會跟搜查友愛衡量時,假如咱們做到更好的閉會,也做到友愛的搜查支撐,既是兩全其美。
URL中的哈希(#號)
單頁利用只有一個頁面,視圖的變更通常是通過路由(route)來驅動,首先,咱們先來談一談單頁利用的URL中的#號,很多采取單元結構王皓咱的URL都呈現了這個符號。網絡推廣以企業(yè)產品或服務為核心內容建立網站,再把這個網站通過各種免費或收費渠道展示給網民的一種推廣方式。
#號在瀏覽器的URL中是一個錨點,在當前頁轉變#號的參數,頁面會跳轉到錨點所在的位置,通過JavaScript咱們可能獲取到#號后的參數:
location.hash // 獲取URL hash
location.hash = "#list" //轉變URL hash
轉變#號后的參數,頁面并不會重載,于是大多數的單頁架構網站,都在URL中采取#號來作為當前視圖的URL地址,例如:
example.com/#index //首頁視圖
example.com/#list //列表頁視圖
example.com/#list/1 //id為1的列表信息的視圖
Backbone.js就是通過轉變#號參數來組織視圖,這里有一個demo可能很直觀的閉會URL的變更。網絡優(yōu)化廣義的網站優(yōu)化所考慮的因素不僅僅是搜索引擎,也包括充分滿足用戶的需求特征、清晰的網站導航、完善的在線幫助等,在此基礎上使得網站功能和信息發(fā)揮出最佳的效果,也就是以企業(yè)網站為基礎,與網絡服務商(如搜索引擎等)、合作伙伴、顧客、供應商、銷售商等網絡營銷環(huán)境中各方面因素建立良好的關系。
看過這個demo,你獲取會發(fā)明很熟悉的符號#!,Twitter曾在URL利用這個標識。這個標識是Google提出。(AJAX 抓取:網站站長跟開發(fā)人員指南1:
因為龐雜的單頁架構頁面,對Google來說抓取比較艱苦,于是給開發(fā)者制訂一個標準:
1、網站提交sitemap給Google;
2、Google發(fā)明URL里有#!符號,例如example.com/#!/detail/1,于是Google開端抓取
example.com/_escaped_fragment_=/detail/1;
_escaped_fragment_這個參數是Google指定的命名,假如開發(fā)者盼望把網站內容提交給Google,就必須通過這個參數生成靜態(tài)頁面。
依據上面的demo,我簡單示例一下Google要抓取的頁面的樣子:
http://119.28.4.22/?escapedfragment_=/detail/1
如此以來,就須要Server通過生成靜態(tài)的內容以便Google抓取。
以下將簡單介紹,單頁架構,爬蟲拜訪根目錄時假如配置Server真?zhèn)€路由。
判斷爬蟲
當Google拜訪
119.28.4.22/#!/detail/1
時,會主動轉化成
http://119.28.4.22/?_escaped_fragment_=/detail/1
以Nginx為例:
if ($args ~ _escaped_fragment_) {
rewrite ^ /api;
}
/api為后盾服務的接口,已nodejs為例,代辦設置如下:
upstream nodejs {
server 127.0.0.
1:3000;
}
location /api {
proxy_set_header X-Request-URI $request_uri;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header Port $server_port;
proxy_pass http://nodejs;
proxy_redirect off;
}
如此,咱們便將Google的拜訪重寫到
/api
這個接口,而后在Server的
/api
處理懇求把靜態(tài)內容輸出即可。
sitemap
Gogole的這個標準,必須有sitemap支撐,因為有可能單頁架構的站點,索引頁面也是JavaScript渲染的。提交sitemap時,不必關注_escaped_fragment_這個參數名,只提交帶哈希符號的URL即可,例如:
http://119.28.4.22/#!/detail/1
weekly
0.5
結語
技巧潮流的步調很快,單頁利用,URL哈希處理也沒渲染的方法實際上已經盛行了很久,在國外很多用戶數據較好的情況下,開發(fā)者會抉擇HTML5 History API的pushstate特點開發(fā),在URL中拋棄#!。然而IE6、7等低端瀏覽器用戶情況較多的網站,#可能很好的兼容。
http://www.fensuiji7.com
>
相關鏈接:長春網站優(yōu)化,長春網站推廣,長春seo,長春seo公司,長春網站排名,長春百度排名,長春網絡公司,長春排名公司,長春網站優(yōu)化公司,長春網站推廣公司