以前接觸的比較多的是SPA單頁面應用,前端路由渲染,對於node服務端渲染剛開始瞭解到,服務端渲染的話相對於SPA來講有助於SEO優化,首屏加載更快。css
和以前的SPA項目不一樣,以前公司spa的發佈部署有兩種方式,一種是前端項目打包以後發給後端,後端集成到項目裏一塊兒發佈,html
另外一種是前端項目打包以後單獨部署,和後端接口分開部署。前端
ssr是這樣的:包括前端和後端,後端只提供接口,前端須要寫client客戶端和server服務端代碼,client也就是最後打包出來的js css代碼,node
server端是用模板引擎渲染出頁面,引用client的js,css。客戶端的靜態資源部署到cdn, 服務端用eggjs(基於koa)框架,利用nunjucks進行模板渲染。git
至關於服務端的工做就是把已有的頁面用模板渲染的方式來渲染出來。github
若是是已有的spa項目想要用ssr來渲染的話,可對已有項目進行打包拆分,而後用egg來進行渲染。後端
node中間層。大體目錄結構:框架
eggjs官網文檔 ,能夠利用腳手架快速初始化。koa
須要注意的是public文件夾下一般是放靜態資源,實際項目中是沒有用到這個,是吧js和css靜態資源放到cdn,而後在模板文件中直接去根據地址名稱來引用的。優化
寫了個簡單的demo。。 egg-demo:https://github.com/leitingting08/egg-demo